[英]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.