Preguntas etiquetadas con templates

La etiqueta de plantillas se usa en múltiples contextos: programación genérica (especialmente C ++) y generación de datos / documentos mediante motores de plantillas. Cuando utilice esta etiqueta en la implementación, preguntas pesadas: etiquete el lenguaje de código en el que está escrita la implementación.



13
Cómo depurar variables en Smarty como en PHP var_dump ()
Tengo algunas variables dentro de una plantilla y no sé dónde las asigné. Necesito saber qué hay dentro de una variable particular; por ejemplo, digamos que tengo una variable en smarty llamada member. Lo intenté {debug}pero no funcionó y no se mostró ninguna ventana emergente. ¿Cómo puedo generar / depurar …

7
std :: function vs template
Gracias a C ++ 11 recibimos la std::functionfamilia de envoltorios de functor. Desafortunadamente, sigo escuchando solo cosas malas sobre estas nuevas incorporaciones. Lo más popular es que son horriblemente lentos. Lo probé y realmente apestan en comparación con las plantillas. #include <iostream> #include <functional> #include <string> #include <chrono> template <typename …

14
Plantillas C ++ que aceptan solo ciertos tipos
En Java, puede definir una clase genérica que acepte solo los tipos que amplían la clase de su elección, por ejemplo: public class ObservableList<T extends List> { ... } Esto se hace usando la palabra clave "extend". ¿Hay algún equivalente simple a esta palabra clave en C ++?
159 c++  templates 

7
std :: enable_if para compilar condicionalmente una función miembro
Estoy tratando de obtener un ejemplo simple para entender cómo usarlo std::enable_if. Después de leer esta respuesta , pensé que no debería ser demasiado difícil encontrar un ejemplo simple. Quiero usar std::enable_ifpara elegir entre dos funciones miembro y permitir que solo se use una de ellas. Desafortunadamente, lo siguiente no …
156 c++  templates  g++  c++11 

3
¿Cuándo usar std :: forward para reenviar argumentos?
C ++ 0x muestra un ejemplo de uso std::forward: template<class T> void foo(T&& arg) { bar(std::forward<T>(arg)); } ¿Cuándo es ventajoso usar std::forward, siempre? Además, requiere su uso &&en la declaración de parámetros, ¿es válido en todos los casos? Pensé que tenía que pasar temporarios a una función si la función …



4
Argumentos predeterminados de plantilla
Si se me permite hacer lo siguiente: template <typename T = int> class Foo{ }; ¿Por qué no se me permite hacer lo siguiente en main? Foo me; Pero debo especificar lo siguiente: Foo<int> me; C ++ 11 introdujo argumentos de plantilla predeterminados y en este momento están siendo difíciles …
151 c++  templates 

2
¿Cómo funciona `void_t`
Vi la charla de Walter Brown en Cppcon14 sobre la programación de plantillas modernas ( Parte I , Parte II ) donde presentó su void_ttécnica SFINAE. Ejemplo: Dada una plantilla variable simple que evalúa voidsi todos los argumentos de la plantilla están bien formados: template< class ... > using void_t …
149 c++  templates  c++14  sfinae 





Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.