コンストラクターチェーンについての私の理解は、クラスに複数のコンストラクター(オーバーロードされたコンストラクター)があり、そのうちの1つが別のコンストラクターを呼び出そうとすると、このプロセスはCONSTRUCTOR CHAININGと呼ばれ、C++ではサポートされないということです。最近、オンライン資料を読んでいるときにこの段落に出くわしました。
クラスをデフォルト値に再初期化するためのメンバー関数を記述したい状況に陥る可能性があります。おそらくすでにこれを行うコンストラクターがあるため、メンバー関数からコンストラクターを呼び出そうとする誘惑に駆られるかもしれません。前述のように、コンストラクター呼び出しの連鎖はC++では不正です。関数内のコンストラクターからコードをコピーすることもできますが、これは機能しますが、コードが重複することになります。この場合の最善の解決策は、コードをコンストラクターから新しい関数に移動し、コンストラクターに関数を呼び出してデータを初期化する作業を実行させることです。
コンストラクターを呼び出すメンバー関数もコンストラクターチェーンの対象になりますか?C++でこのトピックに光を当ててください。