- ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:デフォルトコンストラクタで分からないことがあります。)
デフォルトコンストラクタで初期化子による初期化をしていると思うのですが、「T1()」と「T2()」は具体的に何をしているのでしょうか?
このQ&Aのポイント
- デフォルトコンストラクタの初期化子として、T1とT2をデフォルト値で初期化しています。
- 次のコードは引数aとbを持ち、firstにaを代入してsecondにbを代入して初期化しています。
- このコードはC++のpair構造体のデフォルトコンストラクタと引数付きコンストラクタの実装例です。
- みんなの回答 (1)
- 専門家の回答
質問者が選んだベストアンサー
>pair() : first( T1() ), second( T2() ){} >で初期化子による初期化をしていると思うのですが「T1()」と「T2()」は具体的に何をしているのでしょうか? firstを(T1の)デフォルトコンストラクタで初期化 secondを(T2の)デフォルトコンストラクタで初期化 です。 > pair(const T1& a, const T2& b) : first( a ), second( b ){} >これは、引数a,bを持っていてそれぞれfirstにaを代入してsecondにbを代入して初期化しているのですよね。 もう少し正確に言えば、(定義されていれば)コピーコンストラクタで初期化です。
お礼
ご回答ありがとうございました。