Resultados de la búsqueda a petición "template-specialization"

3 la respuesta

¿Cómo especializar solo algunos miembros de una clase de plantilla?

Código: template<class T> struct A { void f1() {}; void f2() {}; }; template<> struct A<int> { void f2() {}; }; int main() { A<int> data; data.f1(); data.f2(); }; ERROR:test.cpp: In function 'int main()': test.cpp:16: error: 'struct A<int>' has ...

3 la respuesta

Template especialización para un paquete de parámetros vacío

Tengo una función de plantilla variable que se llama a sí misma para determinar el número más grande en una lista (constituido por los argumentos de la plantilla). Estoy tratando de hacer una especialización para cuando el paquete de parámetros ...

3 la respuesta

Template Specialization VS Function Overloading

Un libro de texto Tengo notas de que puede proporcionar su propia implementación para funciones de biblioteca estándar comoswap(x,y) a través de la especialización de plantilla para la sobrecarga de funciones. Esto sería útil para cualquier tipo ...

3 la respuesta

Es posible especializar una definición de plantilla basada en la existencia de una definición de tipo anidada de un parámetro de tipo de plantilla?

Tengo una plantilla,template <typename T> class wrapper, que me gustaría especializar en base a la existencia detypename T::context_type. Sitypename T::context_typee declara @, entonces los constructores y las sobrecargas del operador de ...

3 la respuesta

¿Puedo especializar una plantilla de clase con una plantilla de alias?

Aquí hay un ejemplo simple: class bar {}; template <typename> class foo {}; template <> using foo<int> = bar; ¿Está permitido?

4 la respuesta

Ocultar plantilla de función, declarar especializaciones.

Este es un seguimiento dePlantillas de C ++: evitar la creación de instancias de la plantilla baseUso plantillas para lograr la sobrecarga de funciones sin e...

4 la respuesta

¿Es std :: vector <T> un `tipo definido por el usuario`?

En 17.6.4.2.1 / 1 y 17.6.4.2.1 / 2 de laproyecto de norma actual [https://isocpp.org/files/papers/N3797.pdf]se imponen restricciones a las especializaciones inyectadas por los usuarios ennamespace std. El comportamiento de un programa C ++ no ...

4 la respuesta

Hacer que C ++ falle en la compilación de instancias específicas de la función de plantilla

Estoy trabajando en un proyecto que tiene una función de plantilla así: template <class T> T foo<T>(T val) { return someFunc(val); } template <> bool foo<bool>(bool val) { return otherFunc(val); };Ahora tengo una claseBar, que no quiero aceptar ...

4 la respuesta

Parcialmente especializadas implementaciones de funciones miembro

Actualmente estoy refactorizando algún código que explícitamente se especializa en una función miembro de una plantilla de clase con dos parámetros de plantilla. template <class S, class T> class Foo { void bar(); }; template <class S, class T> ...

4 la respuesta

¿Por qué la plantilla de función no puede ser parcialmente especializada?

Sé que la especificación del lenguaje prohíbeparcia especialización de plantilla de función. Me gustaría saber la razón por la que lo prohíbe. ¿No son útiles? template<typename T, typename U> void f() {} //allowed! template<> void ...