Namespaces
Variants

std::meta::is_explicit

De es.cppreference.net
< cpp | meta
 
 
 
Biblioteca de reflexión
 
Tipos y consultas de reflexión
Consultas de reflexión
Consultas de diseño de reflexión
Propiedades de tipo
Consultas de propiedades de tipo
 
Definido en el encabezado <meta>
consteval bool is_explicit( std::meta::info r );
(desde C++26)

Devuelve true si r representa un constructor o función de conversión explícito (explicit). De lo contrario, devuelve false.

Parámetros

r - un valor de reflexión

Valor de retorno

true si r representa una función miembro que se declara explícita (explicit); de lo contrario false.

Notas

Si r no representa una función, el resultado es false. En particular, el resultado es false si r representa una plantilla de función.

Ejemplo

#include <meta>

struct A {
    explicit operator bool() const;

    template<class T>
    explicit(^^T == ^^void) operator T*() const;
};

static_assert(std::meta::is_explicit(^^A::operator bool));
static_assert(std::meta::is_explicit(^^A::operator void*));
static_assert(!std::meta::is_explicit(^^A::operator int*));

Véase también

comprueba si la reflexión representa una función
(función)