vbase01.c

来自「开放源码的编译器open watcom 1.6.0版的源代码」· C语言 代码 · 共 22 行

C
22
字号
struct V1 {
    virtual void foo( int, int );
    virtual void bar( int, int );
    int v1,v2;
};
struct V2 {
    virtual void foo( int, int );
    virtual void bar( int, int );
    int v1,v2;
};
struct D : virtual V1, virtual V2 {
};

void foo( D *p )
{
    for( int i = 0; i < 10; ++i ) {
        V1 *q = p;                      // assignment to 'q' should be brought
                                        // outside the loop
        q->bar( p->V1::v1 + p->V2::v1, p->V1::v2 + p->V2::v2 );
    }
}

⌨️ 快捷键说明

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