CPP_GEEK Telegram 277
std::variant

Это фича C++17, обеспечивающая типобезопасное объединение, позволяющее хранить и манипулировать значениями разных типов в одном объекте. Она является частью стандартной библиотеки C++ и определена в заголовке .

Шаблонный класс std::variant похож на упрощенную версию union, но с дополнительной безопасностью типов и поддержкой различных операций.

Основными функциями std::variant являются index(), valueless_by_exception(), operator=, emplace.

В этом примере мы создаем объект var, который может содержать значения типов int, float или std::string. Мы присваиваем var различные значения и получаем их с помощью std::get.

Однако, если мы попытаемся получить значение, используя неправильный тип (например, std::get(var), когда вариант содержит std::string, это вызовет исключение std::bad_variant_access.

➡️ @cpp_geek
👍7🔥1



tgoop.com/cpp_geek/277
Create:
Last Update:

std::variant

Это фича C++17, обеспечивающая типобезопасное объединение, позволяющее хранить и манипулировать значениями разных типов в одном объекте. Она является частью стандартной библиотеки C++ и определена в заголовке .

Шаблонный класс std::variant похож на упрощенную версию union, но с дополнительной безопасностью типов и поддержкой различных операций.

Основными функциями std::variant являются index(), valueless_by_exception(), operator=, emplace.

В этом примере мы создаем объект var, который может содержать значения типов int, float или std::string. Мы присваиваем var различные значения и получаем их с помощью std::get.

Однако, если мы попытаемся получить значение, используя неправильный тип (например, std::get(var), когда вариант содержит std::string, это вызовет исключение std::bad_variant_access.

➡️ @cpp_geek

BY C++ geek




Share with your friend now:
tgoop.com/cpp_geek/277

View MORE
Open in Telegram


Telegram News

Date: |

5Telegram Channel avatar size/dimensions Telegram iOS app: In the “Chats” tab, click the new message icon in the right upper corner. Select “New Channel.” It’s easy to create a Telegram channel via desktop app or mobile app (for Android and iOS): ZDNET RECOMMENDS Polls
from us


Telegram C++ geek
FROM American