diag0178.c

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

C
45
字号
// diagnose some dangling references

struct S {
    S( int );
    S( S const & );
    ~S();
};

S const & foo( int x )
{
    return S(x);                // dangling reference!
}

S ack( int x )
{
    return S(x);
}

S const & foo( char x )
{
    return ack(x);              // dangling reference!
}

typedef S (*PF)( int );

S const & goo1( PF pf, int x )
{
    return pf( x );             // dangling reference!
}

S const & goo2( PF pf, int x )
{
    return (*pf)( x );          // dangling reference!
}

S const goo3( PF pf, int x )
{
    return pf( x );
}

S const goo4( PF pf, int x )
{
    return (*pf)( x );
}

⌨️ 快捷键说明

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