types_is_volatile

types_is_volatile (volatile 한정 형식인지 검사)

이 페이지는 C++ 표준 라이브러리의 std::is_volatile 형식 특성에 대해 설명해요. 이 특성은 주어진 형식이 volatile 한정 형식인지 컴파일 타임에 판별하는 데 사용해요. C++11부터 사용할 수 있어요.

출처: cppreference

본문

std::is_volatile는 UnaryTypeTrait(단항 형식 특성)이에요.

만약 T가 volatile 한정 형식(즉, volatile 또는 const volatile)이라면, 멤버 상수 valuetrue가 돼요. 다른 모든 형식에 대해서는 valuefalse예요.

프로그램에서 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 한정 형식을 나타내는지 검사해요 (함수)

더 알아보기 (Learn more)

cppreference