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