virtual4.c

来自「Mac OS X 10.4.9 for x86 Source Code gcc」· C语言 代码 · 共 33 行

C
33
字号
// { dg-do run  }// GROUPS passed virtual-functions#include <stdio.h>#include <stdlib.h>int aset = 0;class A{  public:    void Set() { SetProp(); }    virtual void SetProp() { aset++;}};class B:public A{  public:    void SetProp() { if (!aset) { printf ("FAIL\n"); exit (1);} aset--;}};int main(){    A a;    B b;    A *c=new A;    A *d=new B;    a.Set();    b.Set();    c->Set();    d->Set();    printf ("PASS\n");}

⌨️ 快捷键说明

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