編譯器如何將值3傳遞給非類型參數x
?如何將值3傳遞給'x'以實例化模板函數'f'?
#include <iostream>
template <typename Type, size_t x>
void f(Type (&a)[x])
{
for (int i = 0; i < x; i++)
{
a[i] = i;
std::cout << a[i] << '\n';
}
}
int main()
{
int v[3];
f(v);
}
模板類型扣除 – 2013-03-03 00:32:03
x是size_t類型,因此它在編譯時有一個定義的類型 – hmatar 2013-03-03 00:32:13