Articles of plantillas

C ++ template typename iterator

Considere el siguiente archivo de encabezado: template struct tNode { T Data; //the data contained within this node list<tNode*> SubNodes; //a list of tNodes pointers under this tNode tNode(const T& theData) //PRE: theData is initialized //POST: this->data == theData and this->SubNodes have an initial capacity // equal to INIT_CAPACITY, it is set to the head […]

Django Pass Múltiples Modelos a una Plantilla

Estoy construyendo una libreta de direcciones que incluye las relaciones entre las entradas, etc. Tengo modelos separados para Individuos, Empresas, Sedes y Roles. En mi página de índice me gustaría enumerar todas las instancias de cada modelo y luego filtrarlas. Para que una persona pueda buscar y encontrar fácilmente una entrada. He podido enumerar un […]

Metaprogtwigción de plantillas: diferencia entre utilizar Enum Hack y Static Const

Me pregunto cuál es la diferencia entre usar un const estático y un enum cuando se utilizan técnicas de metaprogtwigción de plantillas. EX: (Fibonacci vía TMP) template struct TMPFib { static const int val = TMPFib::val + TMPFib::val; }; template struct TMPFib { static const int val = 1; }; template struct TMPFib { static […]

C ++ Obtener el nombre del tipo en la plantilla

Estoy escribiendo algunas clases de plantilla para analizar algunos archivos de datos de texto, y como tal, es probable que la gran mayoría de los errores de análisis se deban a errores en el archivo de datos, que en su mayoría no están escritos por progtwigdores, por lo que necesitan un bonito mensaje sobre por […]

¿Es posible “almacenar” un paquete de parámetros de plantilla sin expandirlo?

Estaba experimentando con C ++ 0x plantillas variadas cuando tropecé con este problema: template struct identities { typedef Args type; //compile error: “parameter packs not expanded with ‘…’ }; //The following code just shows an example of potential use, but has no relation //with what I am actually trying to achieve. template struct convert_in_tuple { […]

¿Cómo crear una función de plantilla dentro de una clase? (C ++)

Sé que es posible hacer una función de plantilla: template void DoSomeThing(T x){} y es posible hacer una clase de plantilla: template class Object { public: int x; }; pero, ¿es posible hacer una clase que no esté dentro de una plantilla, y luego hacer una función en esa clase una plantilla? Es decir: //I […]

¿Cuál es la ventaja de la plantilla sin lógica (como el bigote)?

Recientemente, me encontré con bigote que se dice que es una plantilla sin lógica . Sin embargo, no hay ninguna explicación de por qué está diseñado de una manera sin lógica. En otras palabras, ¿cuál es la ventaja de la plantilla sin lógica?

void_t “puede implementar conceptos”?

Estaba viendo la segunda parte de la charla CppCon2014 de Walter Brown sobre metaprogtwigción de plantillas , durante la cual discutió los usos de su novedosa construcción void_t . Durante su presentación, Peter Sommerlad le hizo una pregunta que yo no entendí del todo. (el enlace va directamente a la pregunta, el código en discusión […]

Inferencia de tipo de parámetro de plantilla de C ++

Tengo una plantilla así en C ++ template struct Ptr {}; entonces puedo usarlo como tal: const int i = 0; Ptr ptr; o Ptr ptr; Pero no quiero especificar el tipo int o identity i dos veces, quiero usar solo Ptr ptr; y deje que el comstackdor int parte del tipo int por sí […]

Miembro de la plantilla estática C ++, una instancia para cada tipo de plantilla?

Por lo general, los miembros / objetos estáticos de una clase son los mismos para cada instancia de la clase que tiene el miembro / objeto estático. De todos modos, ¿qué pasa si el objeto estático es parte de una clase de plantilla y también depende del argumento de la plantilla? Por ejemplo, así: template […]