2
我移植的cpp的代碼到目標C.朋友類目標C
在cpp
我們可以爲friend class
添加一個類到另一個類,並使用其所有的公共函數和變量。
我知道Objective C does not support friend class
的概念。
如何使一類爲好友到另一個類的目標C
我移植的cpp的代碼到目標C.朋友類目標C
在cpp
我們可以爲friend class
添加一個類到另一個類,並使用其所有的公共函數和變量。
我知道Objective C does not support friend class
的概念。
如何使一類爲好友到另一個類的目標C
如果你有兩個緊耦合類,那麼你可以使用一些簡單的技巧,露出一個簡單的公共接口。例如,
在Banana.h
:
@interface Banana : NSObject
- (BOOL)isPeeled;
@end
在Monkey.h
:
@interface Monkey : NSObject
- (void)eat:(Banana *)aBanana;
@end
在BananaPrivate.h
:
@interface Banana (PrivateMethods)
- (void)peel;
@end
然後你Monkey.m
文件可以導入BananaPrivate.h
獲得私有函數。如果你正在編寫一個框架,那麼你在你的框架頭文件中不包含BananaPrivate.h
。
這與封裝在C中完成的方式相同。在我看來,它比friend
關鍵字在C++
中明顯更少,但超出瞭解釋原因的範圍。
如果您將Banana作爲類集羣實施,您也可以以這種方式公開私有成員變量,但這有點瘋狂,我不推薦它。如果你需要更緊密的類之間的耦合,你可能需要在代碼的這一部分使用C語言。
@ron:檢查我的幫助你。 http://stackoverflow.com/questions/2241488/friend-classes-in-objective-c – Jhaliya 2011-05-15 06:04:28
請在發佈之前進行搜索。 – 2011-05-15 06:27:10