Содержание
- 2. Структура курса ООП Глава 1. Классы и объекты Глава 2. Наследование, полиморфизм Глава 3. Классы-шаблоны, БСШ*
- 3. Введение. Принципы ООП ООП – технология разработки больших программ Центральное понятие ООП объект По своей сути
- 4. Итак, Объект = данные + операции и функции, их обрабатывающие В языке С++ имеется большой набор
- 5. ООП базируется на 3-х основных принципах 1. Инкапсуляция 2. Наследование 3. Полиморфизм ООП
- 6. 1. Инкапсуляция - сокрытие информации Этот принцип предполагает создание пользовательских типов данных, включающих как данные, так
- 7. 2. Наследование – создание иерархии абстрактных типов данных Определяется базовый класс, содержащий общие характеристики (прародительский класс),
- 8. 3. Полиморфизм - множественность форм Это принцип использования одинаковых имен функций и знаков операций для обозначения
- 9. Язык С++ был создан в лаборатории Bell Labs в начале 80-х годов программистом Бьярном Страуструпом в
- 10. Глава 1. Классы и объекты
- 11. Определение класса базируется на понятии структуры и имеет вид class имя_класса {тело_класса}; Тело класса содержит определение
- 12. Например, определим класс String – строку символов: const int MS = 255; class String { char
- 13. Член-функции отличаются от обычных функций следующим: а) они имеют привилегированный доступ к член-данным класса, т.е. используют
- 14. К сожалению, т.о. определенный класс мы использовать не сможем. Единственное, что мы можем – это определить
- 15. Типы доступа Для того, чтобы работать с классом, для его член-данных и член-функций надо определить тип
- 16. Умолчание Для классов по умолчанию считается доступ - private (поэтому в нашем примере оказался тип доступа
- 17. Итак, поставим перед первой член-функцией public: class String { char line[MS]; // по умолчанию int len;
- 18. Член-функции и операция :: Вернемся к член-функциям: две из них определены в классе(Len и Print), две
- 19. Определим вне класса функции, объявленные в нём: void String:: Fill ( const char *s) { for(
- 20. ? Чем же отличаются член- функции, определенные в теле класса и вне его?
- 21. Отличаются они тем, что при определении в теле класса они получают неявно статус inline (поэтому, если
- 22. п2. Объект Класс - это тип данных, а не объект. Определение.Объект - это переменная, тип которой
- 23. Размещение в памяти Заметим, что указатель s3 пока не определен, т.е. там тоже грязь. ? -
- 24. Работа с объектами К ч/функции обращаемся так же, как к полю структуры (через ‘.’) ! void
- 25. Заменим маленькую ‘о’ на большую в объекте s1 s1[0] = ’O’; // ошибка - s1 -
- 26. Это верно - пока только так, через ч/функцию Index(int), можно «добраться» до символа строки printf(“%d”,s1.len); //
- 27. s3 = &s2; // теперь s3 - указатель на объект s2 Эту связь удалили И связали
- 29. Скачать презентацию