2013-04-23 51 views
0

我知道你可以拥有@private成员变量,但有一些阻止代码调用你的类的默认init:方法,强制创建和使用你的对象的代码只使用另一个初始化程序,如initWithOptions:阻止初始化并强制initWithOption

我已经通过一些Objective-C书籍轻轻一瞥,并没有立即看到任何东西。

我所见过的堆栈溢出话题提示抛出异常,或断言/中止/不管在how to prevent usage of other init methods other than my custom method in objective-c

和使用折旧关键字 How do I flag a function as being deprecated in an iPhone Objective C header file?

这两个似乎比优雅的解决方案稍差,Objective-C中确实没有语言导向的优雅方式来说didNotImplmentSelector ...?

我来自一个C++背景,只是一种期望像隐藏默认的构造函数的能力...

R.

回答

0

我觉得做标准的还是要有的实现调用initWithOptions的init:具有一组默认选项。