Frage

Wie eine Vorlage in einem externen Namespace im Körper meiner Klasse definiert sich spezialisieren?

Konkretes Beispiel mit BGL, die nicht kompiliert:

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

Wenn man sich bewegt Spezialisierung der container_gen aus der Klasse A alles funktioniert super. Das spezifische Problem ist, dass ich weiß nicht, wie „Boost“ Namespace aus der Klasse A zu verweisen.

War es hilfreich?

Lösung

Sie können nicht Namespaces innerhalb von Klassen erstellen, und Sie können nicht eine Vorlage in einem Namespace Umfang innerhalb einer Klasse spezialisiert ist.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top