14.6.2 相依的名稱
Visual C++ 編譯器不目前支援繫結 nondependent 名一開始剖析範本時。 這可能會造成多載,可以宣告為樣板之後 (但範本具現化之前) 會出現。
// DependentNames.cpp
#include <stdio.h>
namespace N {
void f(int) { printf("f(int)\n");}
}
template <class T> void g(T) {
N::f('a'); // calls f(char) should call f(int)
}
namespace N {
void f(char) { printf_s("f(char)\n");}
}
int main() {
g('c');
}
Output
f(char)