std::meta::is_volatile
Определён в заголовке <meta> | ||
|---|---|---|
consteval bool is_volatile( std::meta::info r ); | (начиная с C++26) |
Пусть T будет std::meta::type_of(r), если has-type(r) истинно. В противном случае пусть T будет std::meta::dealias(r).
Возвращает: true, если T представляет собой тип с квалификатором volatile (или const volatile) либо тип функции с квалификатором volatile. В противном случае — false.
Параметры
| r | - | значение отражения |
Возвращаемое значение
true, если T представляет собой тип с квалификатором volatile либо тип функции с квалификатором volatile. В противном случае — false.
Пример
#include <meta>
int a;
volatile int b;
static_assert(!is_volatile(^^a));
static_assert( is_volatile(^^b));
void foo();
struct S
{
auto bar() const volatile noexcept -> void;
};
static_assert(!is_volatile(^^foo));
static_assert( is_volatile(^^S::bar));
int main() {}
См. также
|
(C++11) | проверяет, имеет ли тип квалификатор volatile (шаблон класса) |
|
(C++26)(C++26)(C++26) | добавляет квалификаторы const и/или volatile к отражённому типу (функция) |
|
(C++11)(C++11)(C++11) | добавляет квалификаторы const и/или volatile к заданному типу (шаблон класса) |
|
(C++26)(C++26)(C++26) | удаляет квалификаторы const и/или volatile из отражённого типа (функция) |
|
(C++11)(C++11)(C++11) | удаляет квалификаторы const и/или volatile из заданного типа (шаблон класса) |
© cppreference.com
Licensed under the Creative Commons Attribution-ShareAlike Unported License v3.0.
https://en.cppreference.com/cpp/meta/is_volatile