class ключевое слово C++ для задания класса

Ключевое слово class служит для задания класса в С++. По умолчанию члены класса закрытые (private), в отличие от структур (struct), где члены класса открытые (public). Определение класса следующее:


[template-spec]
class [class-name [: base-class-list ]]
{
   member-list
} [objects-list];

template-spec - опциональные спецификаторы шаблона


template <typename T, typename U, typename V> 
class Foo{};

class - ключевое слово для задания класса

class-name - опциональное название класса, если опущено будет создан безымянный класс. В безымянных классах нельзя объявлять статические члены. Безымянные классы обычно используют как вложенные классы в других классах, или безымянный класс используется как локальный класс, который не используется за пределами области видимости.


int main(){
    class {         // Безымянный класс
    public:         // Задаем члены класса
        int x;
        int y;
    }p1, p2;        // Создаем сразу объекты p1 и p2 безымянного класса
    p1.x = 10;      // Используем члены объекта p1
    p1.y = 20;
    p2.x = p1.x;    // Используем члены объекта p1 и p2
    p2.y = p1.y;
}

base-class-list - опциональное задание имен базовых классов, от которых будет наследоваться текущий класс.

member-list - перечень членов класса (переменные, функции и т.д.).

objects-list - опциональное задание имен объектов текущего класса.

2023-10-22



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

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

Оператор and альтернатива оператору "Логическое И" &&
Оператор and_eq - альтернатива оператору &= (Побитовое И)
asm ключевое слово С++. Включение блока кода на языке ассемблер в код С++.
auto C++, автоматическое вычисление компилятором типа переменной
bitand оператор С++ альтернативный "Побитовое И" &
bitor оператор языка С++ аналогичный "Побитовому ИЛИ" |
bool логический тип данных в С++
break оператор завершения ближайшего цикла или case в С++
case оператор С++ для выполнения блока кода при совпадении целочисленного значения в операторе switch
catch оператор С++ для ловли исключений
class ключевое слово C++ для задания класса
compl оператор C++ альтернативный "Побитовая инверсия" ~
const ключевое слово С++
consteval спецификатор С++20 указывающий что каждый вызов функции должен создавать константы времени компиляции
constexpr спецификатор С++11 означающий что значение переменной или результат работы функции должны рассчитываться на этапе компиляции
const_cast оператор приведения типов для добавления или удаления cv-квалификаторов С++
dynamic_cast С++ преобразование указателей или ссылок на объект
false C++, логическое "Ложно" C++
inline C++ вставка кода функции в месте вызова
Ключевые слова в С++
namespace С++ пространство имен
noexcept в C++
register С++ зарезервированное ключевое слово
return C++ выход из функции с возвратом результата
Выражения rvalue, lvalue, gvalue, xvalue, prvalue.
throw C++ принудительное выбрасывание исключений
true C++ логическое истинно и любое число кроме нуля
try C++ начинает блок кода в котором ловятся исключения
using C++ создание псевдонимов и импорт из пространства имен
volatile С++ запрет оптимизации объекта который может измениться извне