1

プロジェクトにBoost.Property_Treeを使用していて、それに少し機能を追加したいと思います。ファイルタイプを把握して適切なパーサーを使用する「fromFile」静的メンバー変数を追加したいと思います。私のプロジェクトでは、これが現在私が持っている方法です。

typedef boost::property_tree::ptree ConfigNode;

次に、ファイルのロードに使用しているConfigLoaderという別のクラスがあります。ただし、1つの関数をConfigNodeクラスに追加したいと思います。ConfigNodeをboost::property_treeであるかのように処理するコンパイラが必要ですが、静的関数を1つ追加したいと思います。これを行う方法はありますか?

4

1 に答える 1

1

いいえ。これを行うためのクリーンな方法はありません。

2つのオプションがあります。

  1. 関数と変数をクラスの外部で完全に宣言します(たとえば、別のクラスまたは名前空間のグローバル)。
  2. サブクラスboost::property_tree、静的メンバーを追加します。
于 2010-08-08T18:57:40.777 に答える