C++ 如何让回调函数知道向量的哪个元素调用它?

C++ 如何让回调函数知道向量的哪个元素调用它?,c++,vector,callback,C++,Vector,Callback,我有两个向量在随机位置创建新按钮。推回由计时器触发。每次推回都会有一个新的随机位置和一个新的随机值。点击按钮触发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中,我试图删

我有两个向量在随机位置创建新按钮。推回由计时器触发。每次推回都会有一个新的随机位置和一个新的随机值。点击按钮触发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知道是哪个元素触发了它?

您可能希望使用关联容器而不是使用向量,并将附加键传递给函数


你可以找到<>代码>::图对这个任务很有用。

你不规定任何库,按钮和点不是C++标准类。请规定您的环境,以便熟悉环境的人可以帮助您。看起来他可能正在使用fltk(快速照明工具包)。该工具包不使用RAII,这可能解释原始
语句。