[C ++、ベーシック] C ++コンストラクタグローバルオブジェクトのデストラクタシーケンス

ObjDef.h

/ * 
 * 
 *日:2019年9月7日
 * 
 * / 

#ifndefの_H_H_OBJ_DEF_H_H_ 
の#define _H_H_OBJ_DEF_H_H_ 

する#include <iostreamの> クラスOBJA 
{ パブリック
    OBJA(){のstd :: coutの << " OBJAを構築し、" << はstd ::てendl; }
    〜OBJA(){のstd :: COUT << " 自爆OBJA " << はstd :: ENDL。} 
}。クラスObjB 
{ パブリック
    ObjB(){のstd :: coutの << " ObjBを構築し、" << std ::てendl; }
    





〜ObjB(){のstd :: COUT << " 自爆ObjB " << はstd :: ENDL。} 
}。

クラスにObjC 
{ 
パブリック
    にObjC(){のstd :: COUT << " にObjCを構築し、" << はstd :: ENDL。}
    〜にObjC(){のstd :: COUT << " 自爆にObjC " << はstd :: ENDL。} 
}。

#endifの

main.cppに

/ * 
 * 
 *日:2019年9月7日
 * 
 * / 

の#include <iostreamの> 

の#include " ObjDef.h " 

OBJA。
ObjBのB; 
ObjCのC; 

int型のmain()
{ 
    のstd :: coutの << " Hello Worldの" << はstd ::てendl;
    リターン 0 ; 
}

結果

 

 

 結論:

 グローバルオブジェクトの初期化シーケンスと逆の順序デストラクタ。

 デストラクタを呼び出した後、最初の呼び出しの初期化後に高度な感謝のデータ構造スタックで実行することができます。

 グローバルオブジェクトと一致ローカルオブジェクトの初期化シーケンスデストラクタ、。

おすすめ

転載: www.cnblogs.com/AiLun/p/11482784.html