Namespaces
Variants

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

cppreference.net에서 발췌
 
 
유틸리티 라이브러리
일반 유틸리티
관계 연산자 (C++20에서 폐기됨)
정수 비교 함수
(C++20)(C++20)(C++20)    
(C++20)
스왑 및 타입 연산
(C++14)
(C++11)
(C++11)
(C++11)
(C++17)
일반 어휘 타입
(C++11)
(C++17)
(C++17)
(C++17)
(C++11)
(C++17)
(C++23)



 
 
constexpr std::size_t index() const noexcept;
(C++17부터)

variant가 현재 보유하고 있는 대안의 0-기반 인덱스를 반환합니다.

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 이 현재 주어진 타입을 보유하고 있는지 확인
(함수 템플릿)
인덱스나 타입(타입이 고유한 경우)이 주어졌을 때 variant의 값을 읽음, 오류 발생 시 예외 발생
(함수 템플릿)