//#include <stdio.h> template <class T> class Hola { public: // Hola() { printf("Hola()\n"); } // Hola(const Hola<T> &) { printf("Hola(const Hola<T> &)\n"); } static T hola; }; template <class T> T Hola<T>::hola = (T)1.1; // explicit specialisation template <> Hola<double> Hola< Hola<double> >::hola = Hola<double>(); int main() { Hola< Hola<double> >::hola; // printf("%f\n", Hola< Hola<double> >::hola.hola); return 0; }