diag0170.c
来自「开放源码的编译器open watcom 1.6.0版的源代码」· C语言 代码 · 共 69 行
C
69 行
// page 288 of ARM
struct X {
};
struct T {
T(int);
T(X);
};
struct S {
operator int();
operator X();
};
S a;
T x = T(a);
// page 275 of ARM
class Boolean {
int b;
public:
Boolean operator+(Boolean);
Boolean(int i) { b = i!= 0; };
operator int() { return b; }
};
Boolean xbool(1);
void foo( Boolean xbool )
{
xbool + 1;
}
// page 275 of ARM
class B;
class A {
public:
A(B&);
};
class B {
public:
operator A();
};
// #pragma on ( dump_rank )
B b;
// text says that the following is ambiguous, but
//
// Effect operation as:
//
// (1) make an A from b: A::A( b )
// (2) copy result to a1
//
// A::A(B&) is exact
// A::A(A&) is ambiguous
//
A a1 = b;
A a2 = A(b);
A a3(b);
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?