Познакомиться с основами объектно-ориентированного программирования (ООП) в C++, а также научиться создавать классы и объекты.
Что мы узнаем:
- Что такое классы и объекты.
- Принципы ООП: инкапсуляция, наследование, полиморфизм.
- Конструкторы и деструкторы.
Теоретическая часть:
Что такое классы и объекты?
Классы — это шаблоны для создания объектов, а объекты — это экземпляры классов.
Пример класса:
class Dog {
public:
void bark() {
std::cout << "Гав!" << std::endl;
}
};Пример использования:
Dog myDog;
myDog.bark(); // Выведет "Гав!"Принципы ООП
- Инкапсуляция: сокрытие деталей реализации.
- Наследование: возможность унаследовать свойства и методы родительского класса.
- Полиморфизм: способность объектов иметь одно и то же имя метода, но разное поведение.
Пример наследования:
class Animal {
public:
virtual void speak() {
std::cout << "Звуки животного" << std::endl;
}
};
class Dog : public Animal {
public:
void speak() override {
std::cout << "Гав!" << std::endl;
}
};Конструкторы и деструкторы
Конструкторы — это специальные методы, которые вызываются при создании объекта. Деструкторы — при уничтожении объекта.
Пример конструктора и деструктора:
class Dog {
public:
Dog() {
std::cout << "Собака создана." << std::endl;
}
~Dog() {
std::cout << "Собака уничтожена." << std::endl;
}
};Практическая часть:
Задача 1: Создайте класс "Автомобиль" с методами движения и остановки.
class Car {
public:
void start() {
std::cout << "Автомобиль запущен." << std::endl;
}
void stop() {
std::cout << "Автомобиль остановлен." << std::endl;
}
};Задача 2: Создайте иерархию животных с использованием наследования.
class Animal {
public:
virtual void speak() {
std::cout << "Звуки животного" << std::endl;
}
};
class Dog : public Animal {
public:
void speak() override {
std::cout << "Гав!" << std::endl;
}
};Итог урока:
Сегодня мы узнали, как использовать классы и объекты в C++. Эти знания помогут вам создавать более сложные и гибкие программы.