📄 p789a.c
字号:
// { dg-do run }// global and local multidimensional array objects are not getting// constructors called on any dimension, other than the first. Also,// the destructors are not being called. Seems odd, they probably// used to work. :-(// prms-id: 789extern "C" int printf (const char *, ...);struct foo{ static int count; void print (int i, int j) { printf ("foo[%d][%d] = %d\n", i, j, x); } int x; foo () { x = count++; printf("this %d = %x\n", x, (void *)this); } virtual ~foo () { printf("this %d = %x\n", x, (void *)this); --count; }};int foo::count;int main (){ { foo array[3][3]; for (int i = 0; i < 3; i++) { for (int j = 0; j < 3; j++) { printf("&a[%d][%d] = %x\n", i, j, (void *)&array[i][j]); } } // The count should be nine, if not, fail the test. if (foo::count != 9) return 1; } if (foo::count != 0) return 1; return 0;}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -