Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

10 перегрузка

.pdf
Скачиваний:
14
Добавлен:
27.03.2015
Размер:
414.07 Кб
Скачать

10–81

//Конструктор преобразования создает

//из строки ”НГТУ” временный объект,

//присваивает его объекту s4 и затем

//уничтожает

s4 = ”НГТУ”;

cout << ”s4 = ” << s4 << endl;

// Проверка работы конструктора копий

String *s4Ptr = new String(s1); cout << ”*s4Ptr = ” << *s4Ptr

<< endl;

10–82

// Проверка работы ПО =

cout << ”Самоприсваивание *s4Ptr:

<<endl; *s4Ptr = *s4Ptr;

cout << ”*s4Ptr = ” << *s4Ptr

<<endl;

//Проверка работы деструктора

delete s4Ptr; return 0;

}

10–83

РЕЗУЛЬТАТ РАБОТЫ ПРОГРАММЫ: Конструктор преобразования: Привет Конструктор преобразования: студент

Конструктор преобразования:

(s3)

Конструктор преобразования:

(s4)

 

 

 

 

s2

< s1

дает рез-т: 0

 

 

 

 

 

s3

пуст

s3 присваивается объект s1:

Объекту

Вызов operator=

 

s3

= Привет

 

 

 

 

 

10–84

s1 += s2 дает результат:

s1 = Привет студент

s4 = ”НГТУ” дает рез-т: Конструктор преобразования: НГТУ Вызов operator=

Деструктор: НГТУ S4 = НГТУ

Конструктор копий: Привет студент *s4Ptr = Привет студ

10–85

Самоприсваивание *s4Ptr:

Вызов operator=

Попытка самоприсваивания *s4Ptr = Привет студ

Деструктор:

Привет студ

(*s4Ptr)

Деструктор:

НГТУ

(s4)

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]