2012-04-09 58 views
0

我試着去處理結構,但即時通訊訪問成員時,recieving這個錯誤的數組:「必須有類/結構/聯合」C++結構不承認

struct person 
{ int a; int b; int c; 

} 

person myArray[10]; 

int main() 
{ 
for(var i = 0; i < 10; i++) 
{ 
    //Assume that connection string already established 
    outdata<< myArray[i].a << myArray[i].b << myArray[i].c << endl;//Error occurs here when accessing the members within my array of structs 
} 
return 0; 
} 

請指教。

+0

我可以問什麼是'var'?在'for(var i = 0; i <10; i ++)' – weima 2012-04-09 05:05:10

回答

9
struct person { int a; int b; int c; } ; 
             ^^^^ 

您錯過了;

+0

+1:Wow,8 upvotes for a missing分號。 – 2012-04-09 05:06:09

3

你應該做

struct person 
{ int a; int b; int c; 

} ; 
    ^^^^ 

person myArray[10]; 

struct person 
{ int a; int b; int c; 

} myArray[10]; 

在你定義一個新類型「人」(由semocolon終止),然後聲明數組這種新的「myarray的」第一案鍵入「人物」。

在第二種情況下,您將類型聲明和C/C++允許的變量定義組合在一起。

0

第一校正:

struct person 
    { int a; int b; int c; 

    } myArray[10]; 

第二校正:

for(var i = 0; i < 10; i++) 

var未在C++支載。如果您在VS2010或更高版本中運行,則可以使用auto。否則你將不得不使用int