Resultados de la búsqueda a petición "typetraits"

0 la respuesta

Descubra si un objeto C ++ es invocable

¿Es posible escribir un rasgo de tipo, digamosis_callable<T> que indica si un objeto tiene unaoperator() definido? Es fácil si los argumentos para el operador de llamada se conocen de antemano, pero no en el caso general. Quiero que el rasgo ...

1 la respuesta

¿Es posible determinar si un tipo es un tipo de enumeración con alcance?

1 la respuesta

La mejor manera de verificar la existencia de un operador en c ++ 11

Necesito comprobar si una clase dada tiene la

1 la respuesta

¿Cuál es la diferencia entre is_trivially_copyable y is_trivially_copy_constructible?

¿Cuándo darían una respuesta diferente, y cuándo sería útil esta diferencia, en todo caso?

1 la respuesta

Desambiar el puntero de función miembro sobrecargado que se pasa como parámetro de plantilla

1 la respuesta

Rasgos de tipo C ++ para verificar si la clase tiene operador / miembro [duplicado]

1 la respuesta

Une tipos iterables (matrices y clases con begin () / end ())

Escribí rasgos de tipo como clases que se pueden usar para probar si un tipo dado es "iterable". Esto es cierto para las matrices (paraT[N], no paraT[]) y para clases que tienen unbegin y unend método que devuelve cosas que parecen iteradores. Me ...

1 la respuesta

Por qué `es_constructible <función <int (int)>, int (*) (int, int)> :: value` es verdadero bajo VC2015RC

#include <functional> using namespace std; int main() { static_assert(is_constructible<function<int(int)>, int(*)(int,int)>::value, "error"); }El código no se compila con GCC y Clang, sino que se pasa con Visual C ++ 2015 RC. ¿Es este ...

1 la respuesta

¿Cómo verificar si T es un tipo agregado?

Se acerca destd::is_pod. Pero verifica más que solo los tipos agregados. O esstd::is_pod solo lo mejor que podemos hacer? Básicamente, quiero escribir una plantilla de función ...

1 la respuesta

T declval () en lugar de T && declval () para common_type

¿No es mejor usarstd::declval declarado en forma: template< class T > T declval(); // (1)entonces el actual: template< class T > T && declval(); // (2)parastd::common_type (posiblemente con un nombre diferente solo para este propósito ...