我知道你可以拥有@private成员变量,但是在某种程度上阻止代码调用类的默认init:方法并强制创建和使用你的对象的代码只使用另一个初始化程序,如initWithOptions:
我翻过一些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中确实没有以语言为导向的优雅方式来说明NotIintImplmentSelector ......?
我来自C ++背景,只是想要隐藏默认构造函数的能力......
R上。
答案 0 :(得分:0)
我认为标准的做法是使用一个init的实现来调用initWithOptions:使用一组默认选项。