5
struct MyFunc {
template <size_t N>
void doIt() {
cout << N << endl;
}
};
template <typename Func>
struct Pass123ToTemplateFunc {
static void pass(Func f) {
f.doIt<123>(); // <-- Error on compile; is there a way to express this?
}
};
int main() {
Pass123ToTemplateFunc<MyFunc>::pass(MyFunc());
return 0;
}
Esto es casi puramente una curiosidad sintaxis; ¿Hay alguna forma en el lenguaje para expresar esto sin pasar argumentos a la función doIt
? Si no, no es gran cosa y ya estoy al tanto de las formas en que puedo solucionarlo con agrado, por lo que no es necesario proporcionar soluciones alternativas. (Voy a aceptar un "no" como respuesta, en otras palabras, si esa es la verdad: -P.)
Es increíble cuántas veces el uso de esa palabra clave se me escapa. ¡Gracias! – nonoitall
@nonoitall: para obtener más información, consulte estas preguntas frecuentes: [¿Qué es la sintaxis '-> plantilla',' .template' y ':: template' sobre?] (Http://www.comeaucomputing.com/techtalk/templates/# templateprefix) – ildjarn