g++
允許可變長度數組(VLA)作爲擴展。 sizeof
操作者對VLAS結果非常有趣:gof對VLA的sizeof運算符進行了不同的評估嗎?
int main()
{
char size = 20, a[10], b[size];
cout<<"sizeof(a) = "<<sizeof(a)<<endl; // sizeof(a) = 10, (can be used as template param)
cout<<"sizeof(b) = "<<sizeof(b)<<endl; // sizeof(b) = 20 !! (can't used be as template param)
}
在sizeof(b)
情況下,是克++不以下其中sizeof
僅在編譯時評估的標準是什麼?是sizeof
overloaded?
括號不是運算符名稱的一部分。它是'sizeof',而不是'sizeof()'。 – unwind 2012-01-03 16:41:00