Resultados de la búsqueda a petición "enable-if"

1 la respuesta

Especialización de plantillas y enable_if problemas [duplicado]

Esta pregunta ya tiene una respuesta aquí: SFINAE trabajando en el tipo de retorno pero no como parámetro de plantilla [/questions/15427667/sfinae-working-in-return-type-but-not-as-template-parameter] 3 respuestasMe encuentro con un problema ...

1 la respuesta

Cómo usar adecuadamente std :: enable_if en un constructor

Esta pregunta combina varias piezas de código y es un poco complicada, pero intenté adelgazarla lo más posible. Estoy tratando de usarstd::enable_if para invocar condicionalmente el constructor correcto como resultado de firmas de funciones ...

2 la respuesta

Use std :: tuple para la lista de parámetros de la plantilla en lugar de la lista de tipos

Estoy tratando de hacer una llamada a una función de plantilla como esta:

1 la respuesta

¿Por qué SFINAE (enable_if) no funciona para las funciones miembro de una plantilla de clase?

#include <type_traits> struct A{}; struct B{}; template <typename T> struct Foo { typename std::enable_if<std::is_same<T, A>::value>::type bar() {} typename std::enable_if<std::is_same<T, B>::value>::type bar() {} };Mensaje de error: 14:5: ...

2 la respuesta

C ++ 11: Desambiguate a un miembro de la clase en herencia múltiple

Supongamos que tengo esta plantilla de clase base variadic: template <typename ... Types> class Base { public: // The member foo() can only be called when its template // parameter is contained within the Types ... pack. template <typename T> ...

4 la respuesta

¿Cómo uso std :: enable_if con un tipo de devolución auto deducible?

1 la respuesta

¿Cómo puedo usar std :: enable_if en un operador de conversión?

1 la respuesta

C ++: iteración sobre una tupla y resolución de tipo frente a parámetros constantes

Actualmente estoy en el proceso de escribir sobrecargas de operadores aritméticos para tuplas. El operador itera sobre la tupla para realizar la operación en cada uno de sus elementos individuales. Aquí está la definición para operador + ...

1 la respuesta

Firma correcta de / detectar presencia de Contenedor :: reserve ()

Dado un tipo

2 la respuesta

habilitar el miembro de la clase según la plantilla

Ya sé que puedes habilitar (o no) el método de una clase usandostd::enable_if por ejemplo: template<size_t D, size_t E> class Field { ... size_t offset(const std::array<float,D>& p) const { ... } template<typename TT = size_t> ...