types_is_volatile
types_is_volatile (volatile 한정 형식인지 검사)
이 페이지는 C++ 표준 라이브러리의 std::is_volatile 형식 특성에 대해 설명해요. 이 특성은 주어진 형식이 volatile 한정 형식인지 컴파일 타임에 판별하는 데 사용해요. C++11부터 사용할 수 있어요.
출처: cppreference
본문
std::is_volatile는 UnaryTypeTrait(단항 형식 특성)이에요.
만약 T가 volatile 한정 형식(즉, volatile 또는 const volatile)이라면, 멤버 상수 value는 true가 돼요. 다른 모든 형식에 대해서는 value가 false예요.
프로그램에서 std::is_volatile 또는 std::is_volatile_v에 대한 특수화를 추가하면 동작이 정의되지 않아요.
템플릿 매개변수
| T | - | 확인할 형식 |
헬퍼 변수 템플릿
template < class T > constexpr bool is_volatile_v = is_volatile < T >:: value ; |
(since C++17) |
|---|
std::integral_constant에서 상속됨
멤버 상수
value [static] |
T가 volatile 한정 형식이면 true, 아니면 false (공용 정적 멤버 상수) |
|---|
멤버 함수
operator bool |
객체를 bool로 변환하고 value를 반환해요 (공용 멤버 함수) |
|---|---|
operator() (C++14) |
value를 반환해요 (공용 멤버 함수) |
멤버 형식
| 형식 | 정의 |
|---|---|
value_type |
bool |
type |
std :: integral_constant < bool , value > |
가능한 구현
template < class T > struct is_volatile : std :: false_type {}; template < class T > struct is_volatile < volatile T > : std :: true_type {}; |
|---|
예제
#include <type_traits>
#include <valarray>
static_assert(!std::is_volatile_v<int>);
static_assert(std::is_volatile_v<volatile int>);
static_assert(std::is_volatile_v<volatile const int>);
static_assert(std::is_volatile_v<volatile std::valarray<float>>);
static_assert(!std::is_volatile_v<std::valarray<volatile float>>);
int main() {}
같이 보기
is_const (C++11) |
형식이 const 한정인지 검사해요 (클래스 템플릿) |
|---|---|
is_volatile (C++26) |
리플렉션이 volatile 형식 또는 volatile 한정 함수 형식을 나타내는지 검사해요 (함수) |
is_volatile_type (C++26) |
리플렉션이 volatile 한정 형식을 나타내는지 검사해요 (함수) |