修改Xcode新建cpp文件创建.h后缀

先大概说下啥是hpp

hpp,顾名思义等于.h加上.cpp,是Header Plus Plus 的简写。与 .h类似,hpp是C++程序头文件,而 .h里面可以有using namespace std,而 .hpp里则无。其实质就是将 .cpp的实现代码混入 .h头文件当中,定义与实现都包含在同一文件,则该类的调用者只需要include该hpp文件即可,无需再将cpp加入到project中进行编译。而实现代码将直接编译到调用者的obj文件中,不再生成单独的obj,采用hpp将大幅度减少调用project中的cpp文件数与编译次数,也不用再发布烦人的lib与dll,因此非常适合用来编写公用的开源库。

hpp的优点不少,但是编写中有以下几点要注意:

1、不可包含全局对象和全局函数。

2、类之间不可循环调用。

3、不可使用静态成员。

1. 找到C++模板目录

1
open /Applications/Xcode.app/Contents/Developer/Library/Xcode/Templates/File Templates/Source/C++ File.xctemplate/WithHeader

Xcode beta版本等切换到相应的app 下

2. 将.hpp 文件名改为 .h

3. 将cpp文件、h文件中所有的hpp改为h

___FILEBASENAME___.h

1
2
3
4
5
6
7
8
9
10
11
12
13
14
//
// ___FILENAME___
// ___PROJECTNAME___
//
// Created by ___FULLUSERNAME___ on ___DATE___.
//___COPYRIGHT___
//

#ifndef ___FILEBASENAMEASIDENTIFIER____h
#define ___FILEBASENAMEASIDENTIFIER____h

#include <stdio.h>

#endif /* ___FILEBASENAMEASIDENTIFIER____h */

___FILEBASENAME___.cpp

1
2
3
4
5
6
7
8
9
//
// ___FILENAME___
// ___PROJECTNAME___
//
// Created by ___FULLUSERNAME___ on ___DATE___.
//___COPYRIGHT___
//

#include "___FILEBASENAME___.h"