0

我有一个使用 OpenFrameWorks 007 预发行版编写的 C++ 代码,我正在对其进行修改以匹配 OpenFrameWorks 008。该行 -

1. ofAddListener(ofEvents.update, this, &ofxAutoControlPanel::update); 给出错误 - src/ofxAutoControlPanel.h|9|error: request for member ‘update’ in ‘ofEvents’, which is of non-class type ‘ofCoreEvents&()

我无法破译。

  1. 更改ofEvents.updateofEvents->update引发相同的错误
  2. 更改ofEvents.updateofEvents().update解决问题

有人可以解释这三种情况之间的区别吗?

4

2 回答 2

0

似乎 ofEvents 是指向具有 ofCoreEvents&() 类型的函数的指针。即函数调用返回对具有数据成员更新的CoreEvents 类型对象的引用。

于 2013-10-30T20:09:24.620 回答
0

这是因为ofEvents该类已在 OF 0071 中更改。引用更改日志

ofEvents -> ofEvents() 单例 - 这意味着使用“ofEvents”注册调用的项目。需要将这些替换为“ofEvents()”。(注意括号)。

这就是您的 2 号解决方案有效的原因。

于 2013-10-31T09:23:51.127 回答