正如我所理解的那样,除了Objective-C语言是“干净”C的严格超集之外,添加的OOP范例是通过Objective-C Runtime Reference中部分描述的一组函数来模拟的。
因此,我希望有可能以某种方式在中间C / C ++文件中编译Objective-C代码(可能有一些asm插入)。
一般可能吗?
答案 0 :(得分:9)
您可以使用clang重写器转换为C ++。不知道去C的方法。
重写器可通过“-rewrite-objc”命令行选项获得。
答案 1 :(得分:2)
据我所知,没有软件可以将Objective-C代码预处理为中间C代码。
但是你可以通过直接调用Objective-C运行时在C中编写Objective-C程序。问题在于代码可能在实现之间变化,甚至可能在同一运行时的不同版本之间变化。
问题是,它真的值得麻烦吗?