簡體   English   中英

如何讓我的回調函數知道向量的哪個元素調用它?

[英]How can I let my callback function know which element of a vector called it?

我有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知道哪個元素觸發了它?

您可能要使用關聯容器而不是向量,並將附加鍵傳遞給該函數。

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

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM