diag0222.c
来自「开放源码的编译器open watcom 1.6.0版的源代码」· C语言 代码 · 共 49 行
C
49 行
// BADREF.C -- TEST ILLEGAL REFERENCE EXPRESSIONS
//
// 91/10/30 -- Ian McHardy -- defined
class BASE
{
public:
int a;
};
class INHERIT:BASE
{
public:
int b;
};
void fbr( // FUNCTION WITH REF TO BASE PARAMETER
BASE& br )
{
br = br;
}
void fir( // FUNCTION WITH REF TO INHERIT PARAMETER
INHERIT& ir )
{
ir = ir;
}
void main( void )
{
BASE b;
INHERIT i;
BASE& br;
INHERIT& ir;
INHERIT& ir2 = b; // ERROR
void& bad_ref_void; // ERROR
br = i; // ERROR: BASE is a private base of INHERIT
ir = i; // OK
fir( br ); // ERROR
fir( b ); // ERROR
ir = b; // ERROR
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?