C++ で libconfig を使用しています。周囲の複雑さを取り除き、構成を読み込んでいくつかの設定を変更しました。ここで、その Config オブジェクトのコピーを取得し、オリジナルとコピーに個別の変更を加えたいと考えています。どうやってやるの?
libconfig のドキュメントから:
設計上、これらのクラスはどちらもパブリック コピー コンストラクターまたは代入演算子を提供しないことに注意してください。
そのため、C++ libconfig API は直接コピーするためのメカニズムを提供していません。これはおそらくメモリ割り当てを伴う重要な操作であるためです。ただし、文字列からの取り込みはサポートしていますが、文字列への書き込みもサポートしていません。私が見つけた唯一の解決策は、それを一時ファイル (またはfmemopenで開いたファイル) に書き込んでから、再度読み込むことです。
より良い方法はありますか?クロスプラットフォームや標準準拠である必要はありません。Centos x86-64 で十分です。