defarg04.cpp
来自「开放源码的编译器open watcom 1.6.0版的源代码」· C++ 代码 · 共 35 行
CPP
35 行
#include "dump.h"
void foo(int i1, int i2 = 2); // (1)
void foo(int i1, int i2, int i3 = 6); // (2)
void foo(int i1, int i2); // (3) redeclares (1) ambig with (2)
void (*f)(int, int) = &foo; // OK (head: OK branch: OK)
void foo(int,int){}
void goo(int i1 );
void goo(int i1, int i2, int i3 = 6);
void goo(int,int,int) GOOD;
struct D
{
void operator() (int i1, int i2 = 3);
void operator() (int i1, int i2, int i3 = 6);
};
void D::operator() (int i1, int i2);
void (D::*pmfb)(int, int) = &D::operator(); // no ambiguity
void (D::*pmfb2)(int, int,int) = &D::operator(); // no ambiguity
void D::operator() (int i1, int i2) GOOD
void D::operator() (int,int,int) GOOD
int main()
{
D d;
(d.*pmfb)(3,2);
(d.*pmfb2)(3,2,1);
goo(2,2);
CHECK_GOOD(12+22+23);
return errors != 0;
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?