名稱空間
變體
操作

std::variant<Types...>::index

來自 cppreference.com
< cpp‎ | utility‎ | variant
 
 
 
 
constexpr std::size_t index() const noexcept;
(C++17 起)

返回 variant 當前持有的備選方案的零基索引。

如果 variant 處於 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

[編輯] 參閱

檢查 variant 當前是否持有給定型別
(函式模板) [編輯]
根據索引或型別(如果型別唯一)讀取變體的值,出錯時丟擲異常
(函式模板) [編輯]