包含一些Objective-C的项目有几个C类,实现文件的扩展名为 .mm 。
file.h
file.mm
.mm 是什么意思?它不应该只是 .m 吗?
答案 0 :(得分:54)
扩展.mm
是Objective-C编译器所期望的C++
编译单元的扩展,而.m
扩展是C
编译单元的扩展Objective-C编译器所期望的。
假设您没有使用编译器标志来覆盖文件扩展名as this gentleman has done。
答案 1 :(得分:21)
Objective C ++,混合使用C ++和Objective C. http://en.wikipedia.org/wiki/Objective-C#Objective-C.2B.2B
答案 2 :(得分:16)
.mm文件类似于Objective-C编译器的.cpp文件。它们激活C ++编译器而不是C编译器。
以下关于绩效的问题还有其他有用的信息: