std::optional: внутри лежит значение заданного типа или ничего - без указателей и без магических чисел.">
Следите за новинками
в нашем Telegram канале. Жми, чтобы подписаться:)
⊗cpSpChInr 213 of 696 menu
◀ ▶

Введение в std::optional в C++

Значение или пустоту хранит std::optional: внутри лежит значение заданного типа или ничего - без указателей и без магических чисел.

Тип std::variant держит ровно один из нескольких вариантов, а std::any - одно значение, чей конкретный тип выбирается во время выполнения. Подменять их сырыми указателями не стоит: библиотека сама следит за состоянием. Для необязательного целого подключите #include <optional>.

Запишем std::optional<int> с числом и выведем его через «метод value»:

#include <optional> std::optional<int> port = 8080; std::cout << port.value() << "\n";

На экран попадает 8080 - внутри optional лежит обычное целое, а не «дыра» в памяти.

← →
↑
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить