Скачать презентацию
Идет загрузка презентации. Пожалуйста, подождите
Презентация была опубликована 11 лет назад пользователемЮлия Молоканова
1 Друзья Пусть определено два класса, vector и matrix (вектор и матрица). Теперь определим функцию, умножающую матрицу на вектор. Пусть доступ к элементам вектора осуществляется через функцию elem( ), которая осуществляет проверку индекса, и что в matrix имеется аналогичная функция.
2 vector multiply(matrix& m, vector& v); { vector r; for (int i = 0; i
3 Функция не член, получившая право доступа к закрытой части класса, называется другом класса - friend class vector { float v[4]; friend vector multiply(matrix&, vector&); }; class matrix { vector v[4]; friend vector multiply(matrix&, vector&); };
4 Теперь можно написать функцию умножения, которая использует элементы векторов и матрицы непосредственно: vector multiply(matrix& m, vector& v); { vector r; for (int i = 0; i
5 Функция член одного класса может быть другом другого class x { void f(); }; class y {//... friend void x::f(); }; Все функции члены одного класса могут являются друзьями другого. Для этого есть более краткая запись: class x { friend class y; //. };
Еще похожие презентации в нашем архиве:
© 2024 MyShared Inc.
All rights reserved.