¿Se puede acceder al parámetro de plantilla fuera de una plantilla sin un typedef?

Un simple ejemplo:

template<typename _X> // this template parameter should be usable outside!
struct Small {
   typedef _X X; // this is tedious!
   X foo;
};

template<typename SomeSmall>
struct Big {
   typedef typename SomeSmall::X X; // want to use X here!
   SomeSmall bar;
   X toe;
};

¿Hay alguna manera de acceder al parámetro de plantilla?X deSmall sin usar un typedef en elSmall ¿clase?

Respuestas a la pregunta(2)

Su respuesta a la pregunta