コピーコンストラクタは、時間を呼び出します

すぐに3があると呼ばれるC ++コピーコンストラクタ

1.別のオブジェクトを初期化するために作成されたオブジェクト

1      STU S2(10); // 参照コンストラクタでは、呼び出し
2      STU S3(S2); // コンストラクタコールをコピー
3。      COUT << " S2は年齢は" << ENDL << s2.s_age。

 

2.値によって関数に渡された値

1つの 空隙ワーク(STU秒)
 2  {
 3      
4  }
 5  ボイドTEST01()
 6  {
 7      STU秒。
8      作品(単数または複数);
9  }
 10  のint main()の
 11  {
 12      // テスト(); 
13      TEST01()。
14      リターン 0 ;
15 }

3.ローカルオブジェクトは、値によって返さ

1人の STUの行く()
 2  {
 3      STU P1を、
4      coutの<<(int型 *)&P1 << てendl;
5      リターンP1;
6  }
 7  
8  ボイドTEST02()
 9  {
 10      STU = W (行きます)。
11      COUT <<(INT *)&W << ENDL。
12  }
 13  のint main()の
 14  {
 15      // テスト();
16      // TEST01()。
17      TEST02()。
18      リターン 0;
19 }

完全なコード

1の#include <ビット/ STDC ++ H.>
 2  使用して 名前空間STD;
 3  
。4  クラスSTU
 。5  {
 6      公共7          STU()
 8          {
 9              プット(" STU引数なしコンストラクタコール" ); 
 10          }
 11          
12は、          STU(INT 年齢)
 13は、         {
 14              s_age = 年齢;
 15の              プット(" STU引数コンストラクタコールを持つ" );
 16          }
17          
18である          STU(CONST STU&S)
 19          {
 20              // 着信コピーのすべてのプロパティすべての学生私には
21である              s_age = s.s_age;
 22は、              プット(" STUコピーコンストラクタコール" );
 23          }
 24STU()
 25          {
 26は              プット(" STUデストラクタコール" );
 27          }
 28          のint s_age;
 29  };
 30  // 呼び出し
31は、 ボイド検査()
32  {
 33は、 
34である      STU S2(10); // 参照コンストラクタを呼び出すと
35      STU S3(S2)を; // コピーコンストラクタコール
36      COUT << " S2は年齢は" << s2.s_age << ENDL;
 37 [      COUT << " S3は年齢は、" << s3.s_age << ; ENDL
 38である }
 39  
40  空隙ワーク(STU S)
 41であり 、{
 42は     
43である }
 44が 空隙TEST01()
 45  {
 46は     、STU S
 47      ワーク(S)。
48  }
 49  
50  STUの外出()
 51  {
 52      STU P1を、
53      coutの<<(int型 *)&P1 << てendl;
54      リターンP1;
55  }
 56  
57  ボイドTEST02()
 58  {
 59      = W STU (行きます)。
60      COUT <<(INT *)&W << ENDL。
61  }
 62  のint main()の
 63  {
 64      // テスト();
65      // TEST01(); 
66      TEST02()。
67      リターン 0 ;
68 }
コードの表示

 

おすすめ

転載: www.cnblogs.com/mch5201314/p/11584004.html