is_default_constructible (Clase)

Comprueba si un tipo tiene un constructor predeterminado.

Sintaxis

template <class Ty>
struct is_default_constructible;

Parámetros

T
Tipo que se va a consultar.

Comentarios

Una instancia del predicado de tipo es true si el tipo T es una clase que tiene un constructor predeterminado; en caso contrario, es false. Es equivalente al elemento is_constructible<T>del predicado. El tipo T debe ser un tipo completo, void o una matriz de límite desconocido.

Ejemplo

#include <type_traits>
#include <iostream>

struct Simple
{
    Simple() : val(0) {}
    int val;
};

struct Simple2
{
    Simple2(int v) : val(v) {}
    int val;
};

int main()
{
    std::cout << "is_default_constructible<Simple> == " << std::boolalpha
        << std::is_default_constructible<Simple>::value << std::endl;
    std::cout << "is_default_constructible<Simple2> == " << std::boolalpha
        << std::is_default_constructible<Simple2>::value << std::endl;

    return (0);
}
is_default_constructible<Simple> == true
is_default_constructible<Simple2> == false

Requisitos

Encabezado:<type_traits>

Espacio de nombres: std

Consulte también

<type_traits>