以下代码doesn't compile:
template <class T>
void f(T t) { }
struct S {
void f(int, double) {}
void f() { f(42); }
};
错误是:
no matching member function for call to 'f'
如果我在::
代码will be well compiled之前明确添加f(42)
。
为什么全局模板函数与成员函数同名(但参数数量不同)在类名称空间内不可见?