pr17400.c
来自「Mac OS X 10.4.9 for x86 Source Code gcc」· C语言 代码 · 共 54 行
C
54 行
// Test PR 17400. Test case provided by Serge Belyshev. /* { dg-do compile } *//* { dg-options "-O1" } */void inc (int &);bool dec_test (int &);struct A{ int c; friend void AddRef (A * p) { inc (p->c); } friend void Release (A * p) { if(dec_test (p->c)) delete p; }};struct B{ B (A *p) : obj(p) { AddRef (obj); } ~B() { Release (obj); } void swap (B &rhs) { A * tmp = obj; obj = rhs.obj; rhs.obj = tmp; } A *obj;};void bar (A *p1, A* p2){ B px (p1); B px2 (p2); px.swap (px2);}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?