dtors1.c

来自「this is a gcc file, you can download it 」· C语言 代码 · 共 57 行

C
57
字号
// GROUPS passed destructors// Check that when an object of a derived class is (implicitly)// destructed (on exit from the block in which it is declared)// that the destructor for the base class also gets executed.//// (also check that this execution doesn't seg-fault)extern "C" int printf (const char *, ...); int derived_destructed;int base_destructed;struct base {  int base_data_member;  base()  {    base_data_member = 0x5e5e;  }  ~base()  {    base_destructed = 0x781f;  }};struct derived : public base {  int derived_data_member;  derived()  {    derived_data_member = 0xe5e5;  }  ~derived()  {    derived_destructed = 0xf178;  }};void test2 ();int main (){	test2 ();	if ((base_destructed != 0x781f) || (derived_destructed != 0xf178))	  { printf ("FAIL\n"); return 1; }	else	  printf ("PASS\n");}void test2 (){	derived derived_object;	derived_object.derived_data_member = 99;}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?