scope2.c

来自「linux下编程用 编译软件」· C语言 代码 · 共 46 行

C
46
字号
// { dg-do run  }// GROUPS passed scoping// scoping file// From: svkakkad@cs.utexas.edu (Sheetal V. Kakkad)// Date:     Tue, 5 Oct 93 12:38:49 -0500// Subject:  G++ 2.4.5 - global delete operator not called when using "::delete"// Message-ID: <9310051738.AA14586@boogie.cs.utexas.edu>#include <stdio.h>#include <stddef.h>#include <stdlib.h>class foo{ public:  foo () { ; }  ~foo () { ; }  void *operator new (size_t);  void operator delete (void *);};void *foo::operator new (size_t size){  return malloc (size);}int overloaded_delete = 0;void foo::operator delete (void *data){  free ((char *) data);  overloaded_delete++;}int main (){  foo *f = new foo;  foo *ff = ::new foo;  ::delete ff;		// should call the default delete operator  delete f;  if (overloaded_delete == 1)    printf ("PASS\n");  else    { printf ("FAIL\n"); return 1; }}

⌨️ 快捷键说明

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