0
我試過瀏覽其中的很多其他主題,但沒有一個似乎解決了我的具體問題。「表達式必須是指向一個完整的對象類型的指針」
我有一個3X3矩陣類,並具有下列代碼,允許用戶訪問矩陣的行:
V3& M33::operator[](int i)
{
return rows[i]; // rows is a Vector3 array
}
然而,在我的向量類,當我嘗試這樣做:
void rotateAboutArbitraryAxis(int axis, float degrees)
{
if(axis == 0)
{
M33 m();
V3 row0(1.0f, 0.0f, 0.0f);
V3 row1(0.0f, cos(degrees), -sin(degrees));
V3 row2(0.0f, sin(degrees), cos(degrees));
m[0] = row0; //error
m[1] = row1; //error
m[2] = row2; //error
}
}
上面三個標記的位置標有錯誤。
智能感知告訴我「表達式必須是指向完整對象類型的指針」 而實際的構建錯誤是「下標需要數組或指針類型」。
有誰知道這是爲什麼?如果需要,我可以提供更多信息。
謝謝!
看起來像[最煩人的解析](http://stackoverflow.com/questions/20529434/member-must-have-class-struct-union)。 – 2014-09-06 03:22:34
'M33 m();' - >'M33 m;'? – P0W 2014-09-06 03:26:34