Objective-Cを使用するプロジェクトには、実装ファイルに。mm拡張子を持つCクラスがいくつかあります。
file.h
file.mm
。mmはどういう意味ですか? 。mだけではいけませんか?
拡張子.mm
は、Objective-Cコンパイラが期待するC++
コンパイルユニットの拡張子であり、.m
拡張子は、C
コンパイルユニットが期待する拡張子です。 Objective-Cコンパイラ。
これは、ファイル拡張子をオーバーライドするためにコンパイラフラグを使用しないことを前提としています この紳士がしたように 。
Objective C++、C++とObjective Cを組み合わせています。 http://en.wikipedia.org/wiki/Objective-C#Objective-C.2B.2B
.mmファイルは、Objective-Cコンパイラにとって.cppファイルに似ています。 CコンパイラーではなくC++コンパイラーをアクティブにします。
パフォーマンスに関する次の質問には、追加の有用な情報があります。