Objective-C 2.0有一些新的增强功能:
- 垃圾回收
- 快速枚举:
for..in
- 属性
- 线程同步:@synchronized(self)
- @try/@catch/@finally/@throw 异常处理
我有兴趣使用Objective-C 2.0作为语言来编写可在多个操作系统平台上运行的便携式代码 - 同时避免使用OpenStep或GNUStep等框架。
然而,尽管在Windows上的gcc 3.4.5在使用-fobjc-exceptions编译时可以解析使用@try/@catch/@finally/@throw异常处理的语法,但仍会生成此错误:
error: storage size of '_stackExceptionData' isn't known
除了Mac OS X v10.3及更高版本外,其他操作系统是否支持Objective-C 2.0功能?