1

我有一个objective-c 类,它有一个字符串ivar,我需要在调用回调函数时更改它。问题是回调在 c++ 中,因此我无法在该 c++ 函数中访问目标 c 类的 ivars。回调必须在 c++ 中,不能更改。我意识到还有其他方法可以做到这一点,即由该函数设置并由我的类读取的全局变量,或者包含函数和字符串并且是我的objective-c类的成员的包装器c++类。但是我觉得简单地在回调中设置 ivar 将是最简单和最干净的方法。任何人都知道做这种事情的方法吗?

4

2 回答 2

1

我会在 Objective-C 类上使用 getter/setter 并将其作为上下文信息传递给函数。

于 2010-08-06T20:24:19.173 回答
0

这似乎您需要在同一代码中编写 c++ 和目标 C

所以只需将文件的扩展名添加为.mm,就可以轻松编写c++和objective c。

于 2010-08-09T11:35:09.927 回答