Объектно-ориентированное программирование
Ограничение на наследование
Запрещение копирования
Эффективное использование памяти классом String
Эффективное использование памяти классом String
Эффективное использование памяти классом String
Эффективное использование памяти классом String
Эффективное использование памяти классом String
Указатель this
Использование this для возврата значений
Динамическая информация о типах
Изменение типов указателей с помощью dynamic_cast
Оператор typeid
838.50K

Объектно-ориентированное программирование

1. Объектно-ориентированное программирование

Особенности работы
присваивания, копирования,
типизации классов

2. Ограничение на наследование

Оператор присваивания
уникален среди остальных
операторов тем, что он не
может наследоваться.
Перегрузив присваивание
в базовом классе, вы не
сможете использовать ту
же функцию в
порожденных классах.
alpha(alpha а)
2

3. Запрещение копирования

class alpha
{
private:
alpha& operator = (alpha&); //Скрытое присваивание
alpha(alpha&); //Скрытое копирование
};
alpha a1,а2;
a1 = а2; //присваивание
alpha a3(a1); //копирование
3

4. Эффективное использование памяти классом String

4

5. Эффективное использование памяти классом String

5

6. Эффективное использование памяти классом String

6

7. Эффективное использование памяти классом String

7

8. Эффективное использование памяти классом String

8

9. Указатель this

9

10. Использование this для возврата значений

10

11. Динамическая информация о типах

Чтобы заработали dynamic_cast и typeid, компилятор должен
активизировать механизм, который позволяет определять и
изменять тип объекта во время выполнения программы —
RTTI (Run-Time Type Information). В системе Borland С++
Builder этот механизм включается по умолчанию, а в
Microsoft Visual C++ нужно подключать его вручную.
11

12. Изменение типов указателей с помощью dynamic_cast

12

13. Оператор typeid

13
English     Русский Правила