En the wikipedia article, proporciona algunas clases de plantilla. Quiero usarlo en el código real. ¿Cómo puedo hacer eso? Descubrí que casi no hay forma de que cree una instancia de un objeto Vec
.Cómo utilizar realmente la plantilla de expresión
5
A
Respuesta
2
El Wikibooks article on Expression Templates proporciona una visión más clara, sobre todo la última parte:
El ejemplo anterior no muestra cómo los tipos recursivos son generados en tiempo de compilación. Además, expr no parece una expresión matemática en absoluto, pero de hecho es uno. El código que sigue muestra cómo se compusieron recursivamente los tipos utilizando la instanciación repetitiva del siguiente operador + sobrecargado.
template< class A, class B >
DExpression<DBinaryExpression<DExpression<A>, DExpression<B>, Add> >
operator + (DExpression<A> a, DExpression<B> b)
{
typedef DBinaryExpression <DExpression<A>, DExpression<B>, Add> ExprT;
return DExpression<ExprT>(ExprT(a,b));
}
El operador + sobrecargado por encima de hace dos cosas - se agrega el azúcar sintáctica y permite la composición de tipo recursivo, delimitada por los límites del compilador. Por lo tanto, se puede utilizar para reemplazar la llamada a evaluar de la siguiente manera:
evaluate (a.begin(), a.end(), x + l + x);
/// It is (2*x + 50.00), which does look like a mathematical expression.
Cuestiones relacionadas
- 1. Almacenar functors de plantilla de expresión
- 2. ¿Cómo utilizar FreeMarker para la plantilla de Pojos anidados?
- 3. Cómo utilizar subrayado en la plantilla de jade
- 4. Plantilla de clase con amigo de clase de plantilla, ¿qué está pasando realmente aquí?
- 5. vista de Django volver JSON sin utilizar la plantilla
- 6. ¿Cómo usar una expresión lambda como parámetro de plantilla?
- 7. Cómo utilizar un parámetro de plantilla en otro parámetro de plantilla declarado ante
- 8. Cómo utilizar enable_if para permitir funciones miembro sobre la base de parámetro de plantilla de clase
- 9. XSLT: Cómo volver a utilizar una plantilla dentro de otra plantilla
- 10. utilizar Python expresión regular en Django
- 11. matraz de Babel cómo utilizar la traducción en el archivo de plantilla de Jinja
- 12. ¿Qué significa "plantilla de clase no especializada no se puede utilizar como argumento de plantilla"?
- 13. ¿Cómo funciona realmente la etiqueta "recursiva" de Jinja2?
- 14. error de sintaxis en la clase de plantilla con la expresión lambda
- 15. plantilla de la plantilla total especialización
- 16. ¿Cómo afectan los alias de la plantilla la deducción del parámetro de la plantilla?
- 17. Cómo utilizar la etiqueta JSTL "if" sin obtener "..attribute test no acepta ninguna expresión"
- 18. Cómo especializar miembro de la clase de plantilla con el parámetro de plantilla de plantilla
- 19. ¿Cómo funciona realmente la opción make "-j"?
- 20. ¿Cómo se implementa realmente la grabadora Wami?
- 21. ¿Cómo realmente proporciona SAML la seguridad?
- 22. Oracle PLS-00363: la expresión '' no se puede utilizar como destino de la tarea
- 23. ¿Cómo funciona realmente mongoDB?
- 24. Sintaxis de la plantilla de C++ Parámetros de la plantilla
- 25. jinja2 carga el archivo de plantilla desde la plantilla
- 26. Parámetro de la plantilla de la plantilla en la función
- 27. plantilla con la plantilla de múltiples parámetros
- 28. Cómo utilizar la función Utilities.sleep()
- 29. Cómo utilizar la función Desvincular()
- 30. Cómo utilizar la clase ThreadPool
es posible que usted proporciona un ejemplo de funcionamiento para el código en el http://en.wikipedia.org/wiki/Expression_templates? ¿Cómo hacer que funcione en este caso? Gracias. –