std:: holds_alternative
From cppreference.net
C++
Utilities library
|
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
std::variant
| Member functions | ||||
| Observers | ||||
| Modifiers | ||||
| Visitation | ||||
|
(C++26)
|
||||
| Non-member functions | ||||
|
holds_alternative
|
||||
| Helper classes | ||||
| Helper objects | ||||
|
헤더에 정의됨
<variant>
|
||
|
template
<
class
T,
class
...
Types
>
constexpr bool holds_alternative ( const std:: variant < Types... > & v ) noexcept ; |
(C++17부터) | |
variant이
v
가 alternative
T
를 보유하는지 확인합니다.
T
가
Types...
에 정확히 한 번 나타나지 않으면 이 호출은 ill-formed입니다.
목차 |
매개변수
| v | - | 검사할 variant |
반환값
true
만약 현재 variant가
T
alternative를 보유하고 있다면,
false
그렇지 않다면.
예제
이 코드 실행
#include <cassert> #include <string> #include <variant> int main() { std::variant<int, std::string> v = "abc"; assert(not std::holds_alternative<int>(v)); assert(std::holds_alternative<std::string>(v)); }
참고 항목
variant
이 보유한 대안의 0-기반 인덱스를 반환합니다
(public member function) |
|
|
(C++17)
|
인덱스나 타입(타입이 고유한 경우)이 주어지면 variant의 값을 읽으며, 오류 시 예외를 발생시킵니다
(function template) |