ВУЗ:
Составители:
Рубрика:
11
При возврате m3 из функции будет вызван конструктор копирования, чтобы по-
битово вернуть созданный внутри функции объект.
Объект m3 является локальной переменной для функции sum ( ),
В процедурном программировании вернуть локальную переменную такого типа
из функции невозможно. В ООП подобная операция совершается при помощи конст-
руктора копирования.
Указатель this
Используется только в функциях членах класса. Указатель возвращает объект
(адрес объекта), для которого функция применяется.
Пример:
Добавляем в класс my функцию next (), которую вычисляет следующий объект
делает
x++;
y++;
class my
{int x, y;
public:
input ( ) {… }
output ( ) {… }
set…
ret…
my* next ( ) {x++; y++; return this;}
my (my & obj) {… }
конструкторы…
деструкторы…
};
void main ( )
{my m1, *m2; - конструктор по умолчанию
m1. input ( );
m2. input ( );
my m3 = m1;
my m4 = *m2; - вызов конструктора копирования
Получить следующий объект
m1. next ( ); - без this
my m5 = m1. next ( ); копирование идет из указателя this.
Классы
Понятие класс (class) относится ко всем объектам, которые ведут себя одинако-
во. Например, все окружности имеют вполне определенную форму, они обладают та-
кими атрибутами, как местоположение, цвет, диаметр. Объект – это конкретный экзем-
пляр данного класса. Например, Земля имеет размер, цвет и местоположение, отлич-
11
При возврате m3 из функции будет вызван конструктор копирования, чтобы по-
битово вернуть созданный внутри функции объект.
Объект m3 является локальной переменной для функции sum ( ),
В процедурном программировании вернуть локальную переменную такого типа
из функции невозможно. В ООП подобная операция совершается при помощи конст-
руктора копирования.
Указатель this
Используется только в функциях членах класса. Указатель возвращает объект
(адрес объекта), для которого функция применяется.
Пример:
Добавляем в класс my функцию next (), которую вычисляет следующий объект
делает
x++;
y++;
class my
{int x, y;
public:
input ( ) {… }
output ( ) {… }
set…
ret…
my* next ( ) {x++; y++; return this;}
my (my & obj) {… }
конструкторы…
деструкторы…
};
void main ( )
{my m1, *m2; - конструктор по умолчанию
m1. input ( );
m2. input ( );
my m3 = m1;
my m4 = *m2; - вызов конструктора копирования
Получить следующий объект
m1. next ( ); - без this
my m5 = m1. next ( ); копирование идет из указателя this.
Классы
Понятие класс (class) относится ко всем объектам, которые ведут себя одинако-
во. Например, все окружности имеют вполне определенную форму, они обладают та-
кими атрибутами, как местоположение, цвет, диаметр. Объект – это конкретный экзем-
пляр данного класса. Например, Земля имеет размер, цвет и местоположение, отлич-
Страницы
- « первая
- ‹ предыдущая
- …
- 9
- 10
- 11
- 12
- 13
- …
- следующая ›
- последняя »
