iOS h m mm cpp檔案說明

2021-09-07 13:07:23 字數 729 閱讀 1240

檔案區別:

.h :標頭檔案。標頭檔案包含類,型別,函式和常數的宣告。

.m :源**檔案。這是典型的源**副檔名,可以包含objective-c和c**。

.mm :源**檔案。帶有這種副檔名的源**檔案,除了可以包含objective-c和c**以外還可以包含c++**。僅在你的objective-c**中確實需要使用c++類或者特性的時候才用這種副檔名

.cpp:只能編譯c++

當你需要在源**中包含標頭檔案的時候,你可以使用標準的#include編譯選項,但是objective-c提供了更好的方法。#import選項和#include選項完全相同,只是它可以確保相同的檔案只會被包含一次。objective-c的例子和文件都傾向於使用#import。

.m 和.mm 的區別是告訴gcc 在編譯時要加的一些引數。當然.mm還可以命名成.m,但在編譯時要手動加引數(麻煩)

常用場景:

如果你的oc**裡面有包含c++的引用或**,將此類更改為.mm即可;

例子:error:./zxing/cpp/core/src/zxing/common/counted.h:21:10: 'iostream' file not found

在引用zxing的時候#import用到了iostream,但是它是/iphoneos6.1/user/include/c++下面的類,故需要把類名改為.mm即可

注意#import或#include的位置要在.mm檔案裡,如果在.h標頭檔案裡是沒用的

DEF檔案說明

dll中匯出函式的宣告有兩種方式 1 為在函式宣告中加上 declspec dllexport 這裡不再舉例說明 2 是採用模組定義 def 檔案宣告,def檔案為鏈結器提供了有關被鏈結程式的匯出 屬性及其他方面的資訊。首先建立 乙個dll程式,cpp中 int stdcall add int nu...

標頭檔案說明

每個c c程式通常分為兩個檔案。乙個檔案用於儲存程式的宣告 declaration 稱為標頭檔案。另乙個檔案用於儲存程式的實現 implementation 稱為定義 definition 檔案。c c程式的標頭檔案以 h 為字尾,c程式的定義檔案以 c 為字尾,c 程式的定義檔案通常以 cpp 為...

android make mk檔案說明

檔名 說明main.mk 最主要的 make 檔案,該檔案中首先將對編譯環境進行檢查,同時引入其他的 make 檔案。另外,該檔案中還定義了幾個最主要的 make 目標,例如 droid,sdk,等 參見後文 make 目標說明 one shot makefile 是乙個變數,當使用 mm 編譯某個...