especialización de plantilla en el interior del espacio de nombres de clases
-
28-09-2019 - |
Pregunta
¿Cómo especializarse una plantilla definida en algún espacio de nombres externo en el cuerpo de mi clase?
Ejemplo concreto utilizando BGL que no se compila:
class A
{
namespace boost
{
template <class ValueType>
struct container_gen<SomeSelectorS, ValueType>
{
typedef std::multiset<ValueType,MyClass<ValueType> > type;
};
}
}
Si uno se mueve especialización de container_gen fuera de clase A todo funciona muy bien. El problema concreto es que no sé cómo hacer referencia a "reforzar" espacio de nombres de la clase A.
Solución
No se puede crear espacios de nombres dentro de clases, y no se puede especializar una plantilla en un ámbito espacio de nombres dentro de una clase.
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow