En C++, ¿puede tener un operador de plantilla en una clase? De este modo:Plantilla de función con un operador
class MyClass {
public:
template<class T>
T operator()() { /* return some T */ };
}
En realidad, esto parece compilar muy bien, pero la confusión viene en cómo se podría utilizar:
MyClass c;
int i = c<int>(); // This doesn't work
int i = (int)c(); // Neither does this*
El hecho de que se compila en absoluto me sugiere que es factible, ¡No sé cómo usarlo! ¿Alguna sugerencia o es este un método de uso no inicial?
¿Qué significa "esto no funciona/tampoco lo hace"? ¿Lo que pasa? –
El compilador te critica, eso es lo que pasa :) – Toji
Juro que he visto esta pregunta en SO antes ... No puedo encontrarla, así que obviamente uno no puede culparte. – GManNickG