源文件不同后缀hpp.h与.h及.mm等的区别
来源:互联网 发布:ug车削编程 编辑:程序博客网 时间:2024/06/04 19:17
.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<QRCodeReader.h>用到了iostream,但是它是/iphoneOS6.1/user/include/c++下面的类,故需要把类名改为.mm即可
注意#import或#include的位置要在.mm文件里,如果在.h头文件里是没用的
C++实现 源代码的扩展名UNIX C、cc、cxx、cGNU C++ C、cc、cxx、cpp、c++Borland C++ CppMicrosoft Visual C++ cpp、cxx、cc
hpp,其实质就是将.cpp的实现代码混入.h头文件当中,定义与实现都包含在同一文件,则该类的调用者只需要include该hpp文件即可,无需再将cpp加入到project中进行编译。而实现代码将直接编译到调用者的obj文件中,不再生成单独的obj,采用hpp将大幅度减少调用 project中的cpp文件数与编译次数,也不用再发布烦人的lib与dll,因此非常适合用来编写公用的开源库。
1、是Header
2、与*.h类似,hpp是C++程序头文件 。
3、是VCL专用的头文件,已预编译。
4、是一般模板类的头文件。
5、一般来说,*.h里面只有声明,没有实现,而*.hpp里声明实现都有,后者可以减少.cpp的数量。
6、*.h里面可以有using
c++源文件 不同后缀(.cc .cpp .C .cp)的区别
.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<QRCodeReader.h>用到了iostream,但是它是/iphoneOS6.1/user/include/c++下面的类,故需要把类名改为.mm即可
注意#import或#include的位置要在.mm文件里,如果在.h头文件里是没用的
C++实现 源代码的扩展名UNIX C、cc、cxx、cGNU C++ C、cc、cxx、cpp、c++Borland C++ CppMicrosoft Visual C++ cpp、cxx、cc
- 源文件不同后缀hpp.h与.h及.mm等的区别
- .hpp与.h的区别
- .hpp与.h的区别
- hpp.h与.h的区别
- hpp.h与.h的区别
- hpp.h与.h的区别
- hpp与.h区别
- .hpp与.h区别
- .hpp与.h文件的区别
- .h 与.hpp文件的区别
- .hpp和.h的区别
- hpp头文件与h头文件的区别
- hpp头文件与h头文件的区别
- hpp 和 h 区别
- hpp 和 h 区别
- hpp 和 h 区别
- .h 与 .hpp 文件
- .h 与 .hpp 文件
- 【PHP进阶学习】——Trait代码复用类
- SQL标准中的四种隔离级别
- 红黑树*
- Dubbox本地 JAR包部署与安装
- u盘使用记录、痕迹删除技巧方法
- 源文件不同后缀hpp.h与.h及.mm等的区别
- Intellij IDEA 4种配置热部署的方法
- CentOS7 搭建docker registry 私库
- 脱壳学习笔记(一)
- Eclipse上修改Maven Web项目名称
- Docker原理第一话--介绍
- iphone端h5页面底部输入框被键盘遮挡问题
- vue-router
- 数据结构-线性结构之队列