0
运行下面的代码,似乎编译器定义了一个空的printf();Visual Studio 2015可能出现C++ 11实例模板错误
template<typename T>
void printf(T value) {
std::cout << value << std::endl;
cout << "case 1" << endl;
}
template<typename T, typename... Args>
void printf(T value, Args... args) {
printf(value);
cout << "...";
printf(args...);
cout << "case 2" << endl;
}
int main() {
printf(1, 2, "123", 1.1);
return 0;
}
我正在使用vs 2015与最新的补丁。输出是:
1
case 1
...2
case 1
...123...1.1
case 1
case 2
case 2
case 2