コンストラクターの委任: 詳細
C のコンストラクターの委任は、コンストラクターが同じクラスの別のコンストラクターを呼び出すことを可能にする手法です。これは、複数のコンストラクターが同様の操作を実行するときにコードの重複を減らすのに役立ちます。
提供された例では、目的は、異なる引数の型 (HBITMAP や WORD ResourceID など) を使用して Bitmap オブジェクトの構築を委任することです。質問で示されている 2 番目のアプローチは、初期化リストでのコンストラクターの委任を正しく示しています。
Bitmap::Bitmap(WORD ResourceID) : Bitmap((HBITMAP)LoadImage(...)
この構文は、HBITMAP コンストラクターを使用して Bitmap オブジェクトを初期化し、ロードされたリソースを引数として渡します。これは、一時的な HBITMAP オブジェクトを作成して HBITMAP コンストラクターへの委任を試みる最初のアプローチよりも推奨されます。
コンストラクターの委任は、コンストラクターの初期化リスト内でのみ実行できます。最初のアプローチのように、コンストラクター本体から委任しようとすると、エラーや意図しない動作が発生します。
以上がC コンストラクターの委任: メンバー初期化子リストで初期化する理由の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。