overcnv2.c
来自「Mac OS X 10.4.9 for x86 Source Code gcc」· C语言 代码 · 共 26 行
C
26 行
// { dg-do assemble }// { dg-options "-Wconversion" } // Test that we resolve this case as mandated by the standard, but also// warn about it. We choose op char* not because it is a member of B --// the standard says that all conversion ops are treated as coming from// the type of the argument -- but because it is non-const.struct A { operator const char *() const { return ""; }};struct B : public A { operator char *() { return 0; }};int main(){ B b; if ((const char *)b != 0) // { dg-warning "" } surprising overload resolution return 1; if ((const char *)(const B)b == 0) return 2; if ((const char *)(const B &)b == 0) return 3;}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?