起初我以爲這可能是C++的語言限制,但是這實際上編譯,它只是智能感知不識別類成員由於某些原因:Visual Studio的智能感知不能識別類成員在支架初始化
struct MyStruct
{
int member;
};
MyStruct staticObj;
int main()
{
MyStruct localObj;
int arr1[] = { 1, 2, localObj.member }; // When typing localObj Intellisense says it has no members
int arr2[] = { 1, 2, staticObj.member }; // When typing staticObj Intellisense says it has no members
}
我認爲C++不支持可變長度數組的事實可能是解釋,但這是一個編譯時間已知的數組長度,只是它的值是未知的。這是我遇到的錯誤嗎?在Ideone.com上編譯也很好
當您嘗試編譯它時它實際編譯嗎? – NathanOliver
智能感知很棒,但它並不完美。它也不同於編譯器。有時智能感知無法提供,但這並不意味着您的代碼不正確。 –
你應該給你的編譯器名稱和版本。 –