std::variant<Types...>::index
声明
C++17
constexpr std::size_t index() const noexcept;
返回变体当前持有的替代方案的从零开始的索引。
如果变体是 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