НАЙКРАЩИЙ САЙТ ДЛЯ ВЕБ-РОЗРОБНИКІВ

C++ Підручник

C++ Головна C++ Інтро C++ Початок роботи C++ Синтаксис C++ Виведення C++ Коментарі C++ Змінні C++ Введення користувача C++ Типи даних C++ Оператори C++ Рядки C++ Математика C++ Булеві C++ Умови C++ Switch C++ Цикл While C++ Цикл For C++ Break/Continue C++ Масиви C++ Структури C++ Enums C++ Довідники C++ Вказівники

C++ Функції

C++ Функції C++ Параметри функції C++ Перевантаження функцій C++ Область застосування C++ Рекурсія

C++ Класи

C++ ООП C++ Класи/Об’єкти C++ Методи класу C++ Конструктори C++ Специфікатори доступу C++ Інкапсуляція C++ Успадкування C++ Поліморфізм C++ Файли C++ Винятки C++ Дата

C++ Як зробити

Скласти два числа Випадкові числа

C++ Довідник

C++ Довідник C++ Ключові слова C++ <iostream> C++ <fstream> C++ <cmath> C++ <string> C++ <cstring> C++ <ctime>

C++ Приклади

C++ Приклади C++ Компілятор C++ Вправи C++ Вікторина C++ Сертифікат

Мова програмування C++. Уроки W3Schools для початківців українською мовою

En Es De

C++ Класи та об’єкти


C++ Класи/об’єкти

C++ — це об’єктно-орієнтована мова програмування.

У C++ усе пов’язано з класами й об’єктами, а також з атрибутами й методами. Наприклад, у реальному житті автомобіль є об’єктом. Автомобіль має атрибути, такі як вага та колір, і методи, такі як водіння та гальмування.

Атрибути та методи — це в основному змінні та функції, які належать до класу. Їх часто називають "членами класу".

Клас — це визначений користувачем тип даних, який ми можемо використовувати в нашій програмі, і він працює як конструктор об’єктів або "схема" для створення об’єктів.


Створити клас

Щоб створити клас, використовуйте ключове слово class:

Приклад

Створіть клас під назвою "MyClass":

class MyClass {       // клас
  public:             // cпецифікатор доступу
    int myNum;        // атрибут (змінна int)
    string myString;  // атрибут (змінна string)
};

Пояснення прикладу

  • Ключове слово class використовується для створення класу під назвою MyClass.
  • Ключове слово public є специфікатором доступу, який визначає, що члени (атрибути та методи) класу доступні поза класом. Ви дізнаєтеся більше про специфікатори доступу пізніше в цьому підручнику.
  • Усередині класу є int змінна myNum і string змінна myString. Коли змінні оголошуються в класі, вони називаються атрибутами.
  • Нарешті, завершується визначення класу крапкою з комою ;.

Яка різниця між класом і структурою?

Наведений вище приклад дуже схожий на структуру (struct).

  • Структури набагато простіші за об’єкти. На відміну від об’єктів, структури не можуть виконувати інкапсуляцію, наслідування чи поліморфізм, про які ви дізнаєтеся більше в наступних розділах. Якщо все, що вам потрібно, це набір змінних; структуру легше використовувати, ніж об’єкт.

Створити об’єкт

У C++ об’єкт створюється з класу. Ми вже створили клас під назвою MyClass, тож тепер ми можемо використовувати його для створення об’єктів.

Щоб створити об’єкт MyClass, укажіть назву класу, а потім назву об’єкта.

Щоб отримати доступ до атрибутів класу (myNum і myString), використовуйте синтаксис крапки (.) на об’єкті:

Приклад

Створіть об’єкт під назвою "myObj" і отримайте доступ до атрибутів:

class MyClass {       // клас
  public:             // специфікатор доступу
    int myNum;        // атрибут (змінна int)
    string myString;  // атрибут (змінна string)
};

int main() {
  MyClass myObj;  // Створити об’єкт MyClass

  // Доступ до атрибутів і встановлення значень
  myObj.myNum = 15; 
  myObj.myString = "Some text";

  // Вивести значення атрибутів
  cout << myObj.myNum << "\n";
  cout << myObj.myString;
  return 0;
}
Спробуйте самі »

Кілька об’єктів

Ви можете створити кілька об’єктів одного класу:

Приклад

// Створити клас Car з деякими атрибутами
class Car {
  public:
    string brand;   
    string model;
    int year;
};

int main() {
  // Створити об’єкт Car
  Car carObj1;
  carObj1.brand = "BMW";
  carObj1.model = "X5";
  carObj1.year = 1999;

  // Створити інший об’єкт Car
  Car carObj2;
  carObj2.brand = "Ford";
  carObj2.model = "Mustang";
  carObj2.year = 1969;

  // Вивести значення атрибутів
  cout << carObj1.brand << " " << carObj1.model << " " << carObj1.year << "\n";
  cout << carObj2.brand << " " << carObj2.model << " " << carObj2.year << "\n";
  return 0;
}
Спробуйте самі »

C++ Вправи

Перевірте себе за допомогою вправ

Вправа:

Створіть об’єкт MyClass з назвою myObj.

 ;



Коментарі