这可能是一个假设的问题,我不确定。
来自C#背景,我总是在Objective-C中错过了面向对象的原语。相反,您必须无休止地从BOOL
和int
转换为NSNumber
并再次返回,从而创建笨拙且可能错误的代码。
技术上是否可以将所有原始值类型(例如int
,BOOL
,float
等)全局映射到面向对象的对象,即{ {1}}?
答案 0 :(得分:1)
技术上可行吗?当然。完全。
请参阅CF*Dictionary
和/或NSMapTable
。两者都允许Objective-C实例与原始和/或非Objective-C类型之间的映射。
你显然必须编写一些代码来根据需要进行查找(或者修改编译器为你完成。总的来说,可能不值得这么做,因为它会很复杂并且提供更多移动部件失败。
答案 1 :(得分:0)
我不这么认为,也不认为这对你有好处。最好只是顺其自然。如果你不忽略编译器警告,这很少会导致错误的代码。