C Язык: что означает расширение.mm?
Проект с некоторым Objective-C имеет несколько классов C с файлами реализации, имеющими расширение .mm.
file.h
file.mm
Что означает .mm? Разве это не должно быть .m?
Ответы
Ответ 1
Расширение .mm
является расширением для C++
компиляции C++
ожидаемого компилятором Objective-C, а расширение .m
является расширением для модуля компиляции C
ожидаемого компилятором Objective-C.
Предположим, вы не используете флаг компилятора для переопределения расширения файла, как это сделал этот джентльмен.
Ответ 2
Цель C++, смешивает C++ и Objective C. http://en.wikipedia.org/wiki/Objective-C#Objective-C.2B.2B
Ответ 3
.mm файлы похожи на файлы.cpp на компилятор Objective-C. Они активируют компилятор C++ вместо компилятора C.
Следующий вопрос о производительности имеет дополнительную полезную информацию:
Разница в производительности Objective-C,.m/.mm?