次のように、コピー コンストラクターとコピー代入演算子をデフォルトに設定しました。
Config(const Config& config) = default;
Config& operator=(const Config& rhs) = default;
そして、友情を介してこれらへのアクセスを独立した機能に与えました。構成オブジェクトのコピーを作成すると、次の警告とメモ (?) が表示されます。
./cfg/config.hpp:129:3: 警告: 未使用のパラメーター 'config' [-Wunused-parameter] cfg/get.cpp: 関数内 'const cfg::Config& cfg::Get(bool)': cfg/ get.cpp:34:30: 注: 合成されたメソッド 'cfg::Config::Config(const cfg::Config&)' がここで最初に必要です
コピー コンストラクターがインスタンス化されていないように見えます。それにもかかわらず、コードは実行されているようです。
gcc バージョン 4.6.3 (Ubuntu/Linaro 4.6.3-1ubuntu5)