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

4 la respuesta

detección de typedef en tiempo de compilación (metaprogramación de plantilla)

Actualmente estoy haciendo una metaprogramación de plantilla. En mi caso, puedo manejar cualquier tipo "iterable", es decir, cualquier tipo para el que untypedef foo const_iterator existe de la misma manera. Intenté utilizar la nueva ...

1 la respuesta

Es posible usar rasgos de tipo para verificar si un tipo es un contenedor?

¿Puedo usar C ++ Type Traits para verificar si un tipo es un contenedor tipo STL? Ya sé de la construcción de GCC__is_class pero me gustaría ser un poco más específico si es posible.

1 la respuesta

Existe una función / macro en tiempo de compilación para determinar si una estructura C ++ 0x es POD?

Me gustaría tener un C ++ 0x static_assert [http://msdn.microsoft.com/en-us/library/dd293588.aspx] que prueba si un tipo de estructura dado ...

6 la respuesta

¿Rasgo de tipo para tipos móviles?

Estoy tratando de escribir una plantilla que se comporte de una manera si T tiene un constructor de movimientos, y de otra manera si T no lo tiene. Traté de buscar un rasgo de tipo que pudiera identificar esto, pero no tuve tanta suerte y mis ...

1 la respuesta

Plantillas C ++: cómo determinar si un tipo es adecuado para subclasificar

Digamos que tengo alguna clase de plantilla según el tipoT. T podría ser casi cualquier cosa:int, int*, pair <int, int> ostruct lol; no puede servoid, una referencia o cualquier cosa calificada por cv. Para alguna optimización, necesito saber si ...

2 la respuesta

Existe un rasgo de tipo para eliminar el cv y la referencia de nivel superior a la vez?

Solo quiero saber si ya hay uno provisto por el estándar. Sé que es fácil hacer uno tú mismo // for C++03, use <tr1/type_traits> and std::tr1 #include <type_traits> template<class T> struct remove_toplevel{ typedef ...

5 la respuesta

¿Cómo funciona `is_base_of`?

¿Cómo funciona el siguiente código? typedef char (&yes)[1]; typedef char (&no)[2]; template <typename B, typename D> struct Host { operator B*() const; operator D*(); }; template <typename B, typename D> struct is_base_of { template <typename T> ...

1 la respuesta

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

7 la respuesta

¿Cómo escribir la plantilla `is_complete`?

Despues de contestaresta pregunta que estaba tratando de encontrar