std::variant<Types...>::index
来自cppreference.com
constexpr std::size_t index() const noexcept; |
(C++17 起) | |
返回变体当前所保有的可选项的零基索引。
若变体为 valueless_by_exception
(因异常无值),则返回 variant_npos
。
示例
运行此代码
#include <iostream> #include <string> #include <variant> 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 的值,错误时抛出异常 (函数模板) |