2010-12-07 26 views
0

我有2個向量在隨機位置創建新按鈕。 push_back由定時器觸發。每個push_back都會有一個新的隨機位置和一個新的randval。點擊一個按鈕觸發cb_addscore。如何讓我的回調函數知道向量的哪個元素調用它?

m.push_back(new mole(Point(randx*50+25,randy*50+25),randval)); 
v.push_back(randval); 
mb.push_back(new Button(Point(randx*50,randy*50),50,50,"1",cb_addscore)); 

在回調函數cb_addscore,我試圖刪除觸發它的按鈕,這將是m和MB向量的特定元素。

但是我怎樣才能讓cb_addscore知道哪個元素觸發了它?

+0

您不規定任何庫,並且Button和Point不是C++標準類。請規定您的環境,以便熟悉它的人可以幫助您。 – 2010-12-07 08:22:22

回答

1

您可能希望使用關聯容器而不是使用矢量,並將其他鍵傳遞給該函數。

您可能會發現std::map對此任務很有用。

相關問題