69

いくつかのObjective-Cを含むプロジェクトには、拡張子が.mmの実装ファイルを持ついくつかのCクラスがあります。

file.h
file.mm

.mmはどういう意味ですか?.mだけではいけませんか?

4

3 に答える 3

78

拡張子.mmは、C++Objective-Cコンパイラが期待するコンパイルユニットの.m拡張子であり、Extension-Cコンパイラが期待するコンパイルユニットの拡張子ですC

これは、この紳士が行ったように、ファイル拡張子をオーバーライドするためにコンパイラフラグを使用しないことを前提としています。

于 2012-04-26T14:19:32.700 に答える
26

Objective C ++、C++とObjectiveCを組み合わせたもの 。http://en.wikipedia.org/wiki/Objective-C#Objective-C.2B.2B

于 2012-04-26T14:17:13.490 に答える
19

.mmファイルは、Objective-Cコンパイラの.cppファイルに似ています。これらは、Cコンパイラの代わりにC++コンパイラをアクティブにします。

パフォーマンスに関する次の質問には、追加の有用な情報があります。

Objective-C、.m / .mmのパフォーマンスの違いは?

于 2012-04-26T14:16:38.127 に答える