Frage

Ich verwende Boost.Property_Tree für ein Projekt und ich möchte ein kleines bisschen Funktionalität, um es hinzuzufügen. Ich mag eine „fromfile“ statische Membervariable hinzufügen, die den Dateityp herauszufinden und dann die richtigen Parser verwenden. In meinem Projekt ist dies zur Zeit, wie ich es habe.

typedef boost::property_tree::ptree ConfigNode;

Dann habe ich eine andere Klasse namens ConfigLoader, dass ich die Datei laden im Einsatz. Ich möchte allerdings die eine Funktion einer ConfigNode Klasse hinzuzufügen. Ich brauche den Compiler zu behandeln ConfigNode, als ob es eine boost :: property_tree war, aber ich mag eine statische Funktion hinzuzufügen. Gibt es eine Möglichkeit, dies zu tun?

War es hilfreich?

Lösung

Nein. Es gibt keine clean Art und Weise, dies zu tun.

Sie haben zwei Möglichkeiten:

  1. Erklären Sie Ihre Funktionen und Variablen außerhalb der Klasse vollständig (zum Beispiel in einer anderen Klasse oder global in einigem Namensraum).
  2. Subclass boost::property_tree, das Hinzufügen Ihrer statischen Element (s).
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top