ВУЗ:
Составители:
Рубрика:
48
• Операции, перегружаемые внутри класса, могут перегружаться
только нестатическими компонентными функциями с параметрами. Вызы-
ваемый объект класса автоматически воспринимается в качестве первого
операнда.
• Операции, перегружаемые вне области класса, должны иметь два
операнда, один из которых должен иметь тип класса.
Примеры.
1) class person{…};
class adresbook
{ // содержит в качестве компонентных данных множество объектов
типа //person, представляемых как динамический массив, список или
дерево
…
public:
person& operator[](int); //доступ к i-му объекту
};
person& adresbook : : operator[](int i){. . .}
void main()
{class adresbook persons;
class person record;
…
record = persons [3];
}
2) class person{…};
class adresbook
{ // содержит в качестве компонентных данных множество объектов
типа//person, представляемых как динамический массив, список или дерево
…
public:
friend person& operator[](const adresbook&,int);//доступ к i-му объекту
};
person& operator[](const adresbook& ob ,int i){. . .}
void main()
{class adresbook persons;
class person record;
…
record = persons [3];
}
48 • Операции, перегружаемые внутри класса, могут перегружаться только нестатическими компонентными функциями с параметрами. Вызы- ваемый объект класса автоматически воспринимается в качестве первого операнда. • Операции, перегружаемые вне области класса, должны иметь два операнда, один из которых должен иметь тип класса. Примеры. 1) class person{…}; class adresbook { // содержит в качестве компонентных данных множество объектов типа //person, представляемых как динамический массив, список или дерево … public: person& operator[](int); //доступ к i-му объекту }; person& adresbook : : operator[](int i){. . .} void main() {class adresbook persons; class person record; … record = persons [3]; } 2) class person{…}; class adresbook { // содержит в качестве компонентных данных множество объектов типа//person, представляемых как динамический массив, список или дерево … public: friend person& operator[](const adresbook&,int);//доступ к i-му объекту }; person& operator[](const adresbook& ob ,int i){. . .} void main() {class adresbook persons; class person record; … record = persons [3]; }
Страницы
- « первая
- ‹ предыдущая
- …
- 45
- 46
- 47
- 48
- 49
- …
- следующая ›
- последняя »