2012-09-05 87 views
-4

好的,所以我有一個類的結構數組,它本身有一個安裝方法。結構數組不會改變[解決,令人尷尬]

struct key 
{ 
    int x; 
    int y; 
}; 

class myClass 
{ 
    key theKeys[9]; 
    void setup(); 
};  
的設置方法我通過他們,但他們

保持不變

void myClass::setup() 
{ 
    for (int i = 0; i < 9; i++) 
    { 
     theKeys[i].x = i; 
     theKeys[i].y = i - 1; 
     cout << theKeys[i].x << " " << theKeys[i].y << endl; 
    } 
} 

將返回

0 0 
0 0 
0 0 
0 0 
0 0 
0 0 
0 0 
0 0 
0 0 

我在做什麼錯? 請記住,這不是我項目中的實際代碼,但它幾乎相同。

編輯:WOOPS,我修好了。我不想詳細討論,但實際上它工作正常,但cout沒有正確設置,因此它打印了尚未設置的錯誤信息。我道歉。

+0

發表演示問題的簡約代碼示例。 –

+0

如何用'new'運算符創建關鍵結構? – Treb

+0

適合我。 – Aesthete

回答

0

這將工作。

在主文件夾中創建一個myClass實例:myClass mc;。進行功能/方法調用以設置:mc.setup();

#include <iostream> 
using namespace std ; 


struct key 
{ 
    int x; 
    int y; 
}; 

class myClass 
{ 
    public: 
     key theKeys[9]; 
     void setup(); 
};  

void myClass::setup() 
{ 
    for (int i = 0; i < 9; i++) 
    { 
     theKeys[i].x = i; 
     theKeys[i].y = i - 1; 
     cout << theKeys[i].x << " " << theKeys[i].y << endl; 
    } 
} 


int main() 
{ 
    myClass mc; 
    mc.setup(); 


return 0; 
}