default C++ указание ветки по умолчанию в операторе switch или создания конструктора по умолчанию в классе

Ключевое слово С++ применяемое в двух случаях:
1) Задает блок кода выполняемый в операторе switch при не совпадении ни с одной веткой (значением case)


#include <iostream>     // cout
int main(){
    int i = 5;      // Определяем переменную
    switch (i){     // Проверяем переменную на равенство с идентификатором в case
        case 0:{    // Код в данной ветке выполнялся бы при i == 0
            std::cout << "zero";
        }
        case 1:{    // Код в данной ветке выполнялся бы при i == 1
            std::cout << "one";
        }
        default:{   // Код в данной ветке выполняется если i не равно 0 или 1
            std::cout << "default";
        }
    } // end switch
} // end main
// Вывод программы:
//default
2) Задает в классе необходимость созданием компилятором конструктора по умолчанию (без параметров). Компилятор создает конструктор по умолчанию только если в классе не создается ни один конструктор (копирования, перемещения, с параметрами и т.д.), указание ключевого слова default заставляет его создавать конструктор по умолчанию в обязательном порядке.

#include <iostream>     // cout
class Point_class{ // Класс точки с координатами х и у
public:
  Point_class() = default;  // Указываем что необходим конструктор по умолчанию
  Point_class(int x_val, int y_val){ // Конструктор с параметрами
      x = x_val;    // Присваиваем параметры конструктора членам класса
      y = y_val;
      std::cout << x << ", " << y;  // Выводим координаты точки
  }
private:
  int x = 0; // Член класса (переменная x)
  int y = 0; // Член класса (переменная y)
};
int main(){
    Point_class pt1(10, 20); //10, 20   Конструктор с параметрами
    Point_class pt2();  // Конструктор без параметров, создан благодаря default в классе
}
2023-10-22



Понравилась страница?
Добавить в закладки
Или поделиться!

Связанные темы

continue оператор С++ прерывающий текущую итерацию цикла do, while или for
default C++ указание ветки по умолчанию в операторе switch или создания конструктора по умолчанию в классе
do C++ оператор цикла
else оператор ветвления С++
for - оператор цикла C++ выполняющийся до тех пор пока условие не станет ложным
goto C++ оператор безусловного перехода
if оператор условного выполнения кода С++
switch C++ оператор ветвления
while C++ оператор цикла