1

我是 Objective C 和 iOS 的新手。到目前为止,我已经为初次动手制作了简单的应用程序。我正在浏览网络中的一个示例,但无法理解代码中方法调用的实现

下面是方法调用

[db addObserver:(DBObserver*)self];

我知道“db”对象正在调用带有参数的方法“addObserver”。但是“自我”在这里意味着什么。对争论有点困惑。

对于这样愚蠢的问题,我感到非常抱歉,但请考虑我是 iOS 和 Objective C 的初学者

4

3 回答 3

2

在这种情况下,声明:

[db addObserver:(DBObserver*)self];

表示“将( self) 添加为db对象的观察者”。

但是,它似乎不是 Key Value Observing ( KVO ),因为它具有不同的方法签名,因此它必须是观察者模式的其他一些实现。

更新我怀疑强制转换DBObserver *是不必要的,但这取决于该方法的声明方式。

于 2013-02-28T10:32:44.427 回答
1

self在 Objective-C 中等于this在 C++ 中

于 2013-02-28T10:20:49.140 回答
1

selfthis与in 相同javaC++

于 2013-02-28T10:22:58.203 回答