std::variant<Types...>::index
来自cppreference.com
工具库
std::variant
成员函数 | ||||
观察器 | ||||
variant::index
|
||||
修改器 | ||||
非成员函数 | ||||
辅助类 | ||||
辅助对象 | ||||
constexpr std::size_t index() const noexcept;
|
(C++17 起) | |
返回 variant
当前所保有的可选项的零基下标。
若 variant
因异常无值( valueless_by_exception ),则返回 variant_npos 。
示例
运行此代码
#include <variant> #include <string> #include <iostream> int main() { std::variant<int, std::string> v = "abc"; std::cout << "v.index = " << v.index() << '\n'; v = {}; std::cout << "v.index = " << v.index() << '\n'; }
输出:
v.index = 1 v.index = 0
参阅
(C++17)
|
检查某个 variant 是否当前持有某个给定类型 (函数模板) |
(C++17)
|
以给定索引或类型(如果类型唯一)读取 variant 的值,错误时抛出异常 (函数模板) |