【发布时间】:2015-07-14 11:41:43
【问题描述】:
这是我的回调函数(ALOG 用于调试)
static void playerEventCallbackA(void *clientData, SuperpoweredAdvancedAudioPlayerEvent event, void *value) {
ALOG("###################### CALLBACK PLAYER A.... ");
if (event == SuperpoweredAdvancedAudioPlayerEvent_LoadSuccess) {
ALOG("###################### CALLBACK PLAYER A.... loaded");
SuperpoweredAdvancedAudioPlayer *playerA = *((SuperpoweredAdvancedAudioPlayer **)clientData);
playerA->setBpm(126.0f);
playerA->setFirstBeatMs(353);
playerA->setPosition(playerA->firstBeatMs, false, false);
};
}
我需要在这里设置 bpm,这是我在这个类的另一个函数上检测到的。我该如何管理?
【问题讨论】:
-
听起来像是 XY 问题。通过在一个对对象不起作用的函数中访问每个对象的变量,您实际上想达到什么目的?
-
我已经编辑了上面的问题;)
-
没有the
bpm,这就是重点。当bpm是非静态数据成员时,该类的每个对象(实例)都有自己的bpm值,并且没有“全局”值。另一方面,静态成员函数不与任何一个对象相关联——它基本上是一个全局函数。它可以访问任何对象上的bpm值,但您必须知道要更改哪个对象的值。还是您希望bpm也是静态的(全局值)?
标签: c++ variables undeclared-identifier