說我創建了一個viewController。然後我想創建另一個像第一個viewController一樣的viewController。看起來像繼承工作。在Objective-c中,我如何製作一種方法,可供所有子類訪問,但無法公開訪問
但是,originalViewController的許多任務都是私有方法,我希望最小化公共接口。
如果我很好地宣佈這些方法是公開的,那麼隱私私密化的目標就沒有實現。
如果我聲明這些方法是私有的,那麼子類不知道這些方法。
如果我爲子類創建一個特殊的.h文件,它會很尷尬。
無論如何,做這種事情的行業標準方式是什麼?
在C++中,我們將使用受保護的方法或函數來完成此權利?
更新:
我把
#import "BGGoogleMap+protected.h"
@implementation BGGoogleMap()
@end
它不工作。它要求標識符。
如果您想要Apple提供的這個示例,請查看'UIKit/UIGestureRecognizerSubclass.h'。 –
UIKit/UIGestureRecognizerSubclass.h定義了UIGestureRecoqnizer。任何使用子類的類都將包含整個類。我想我失蹤了。 –
嗯,當然,因爲UIGestureRecognizer是在公共標題。但我認爲,羅布認爲這種技術是相同的,但要把它們放在私人標題中。 – user1118321