有一个精灵,我想绑定一些var。从文件我理解的东西,使用 函数“setUserData”和“getUserData”。但是有一些错误。
float nums = 2.3f;
pSprite->setUserData((void*)nums); // wrong??
// how to get the var from pSprite. float some_float = *(pSprite->getUserData());??
答案 0 :(得分:0)
用户数据存储指针,因此您需要动态分配内存。尝试这样的事情:
float* nums = new float(2.3f);
pSprite->setUserData((void*)nums);
...
float* data = (float*)pSprite->getUserData();
printf("%f", *data);
delete data;
通常,您创建一个包含要在sprite中存储的所有数据的结构。如果您只想存储一个号码,这将有效。无论哪种情况,请务必删除内存!