Domanda

Come specializzarsi un modello definito in un certo dominio esterno nel corpo della mia classe?

Esempio concreto utilizzando BGL, che non può essere compilato:

class A
{
  namespace boost
  {
    template <class ValueType>
    struct container_gen<SomeSelectorS, ValueType>
    {
      typedef std::multiset<ValueType,MyClass<ValueType> > type;
    };
  }
}

Se uno si muove specializzazione container_gen di classe A tutto funziona alla grande. Il problema specifico è che non so come fare riferimento a "spinta" namespace dalla classe A.

È stato utile?

Soluzione

Non è possibile creare spazi dei nomi all'interno delle classi, e non è possibile specializzarsi un modello in un ambito spazio dei nomi all'interno di una classe.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top