ВУЗ:
Составители:
Рубрика:
129
Пример 2.
Рассмотрим снова класс stroka:
class stroka {
char *c;
int len;
public:
. . .
stroka & operator = ( stroka & str );
. . .
};
stroka & stroka::operator = (stroka & str) {
if ( str.len > len ){
cout << “Длина строки мала! Копирование невозможно!\n“;}
else { strcpy ( c, str.c ); len = str.len;}
return * this;
}
void main ( ) {
stroka A (“Строка A“), B (“Строка“), C(“Str“);
A = B; A.display ( );
B = C; B.display ( );
C = A; C.display ( );
}
В результате выполнения этой программы на мониторе появится:
Длина строки: 6
Содержание строки: Строка
Длина строки: 3
Содержание строки: Str
Длина строки мала! Копирование невозможно!
Длина строки: 3
Содержание строки: Str
22.2. Операция [ ]
Выражение x [ y ], где x – объект абстрактного типа Class, интер-
претируется как
x.operator [ ] (y).
Заметим, что массив объектов абстрактного типа, как и любого
стандартного, имеет стандартный тип – указатель.
Страницы
- « первая
- ‹ предыдущая
- …
- 125
- 126
- 127
- 128
- 129
- …
- следующая ›
- последняя »
