init3.c

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

C
39
字号
// GROUPS passed initialization// p2766: Make sure that members are initialized in order of declaration// in the class, not in order of specification in the mem-initializer list.extern "C" int printf (const char *, ...);extern "C" void exit (int);int count = 0;void die () { printf ("FAIL\n"); exit (1); }class bar1 {public:  bar1 (int) { if (count != 0) die (); count = 1; }};class bar2{public:  bar2 (int) { if (count != 1) die (); count = 2; }};class foo{public:  bar1 a;  bar2 b;  foo (int, int);};// bar1 should get built before bar2foo::foo (int x, int y) : b(x), a(y) {}int main(){  foo f (1, 2);  printf ("PASS\n");}

⌨️ 快捷键说明

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