头文件(,h):
写类的声明(包括类里面的成员和方法的声明)、函数原型、#define常数等,但一般来说不写出具体实现。
在写头文件时需要注意,在开头和结尾处必须按照如下样式加上预编译语句:
#ifndef HELLO_H
#define HELLO_H
//Your codes
#endif
这样做是为了防止重复编译,不这样做就有可能出错。至于HELLO_H这个名字实际上是无所谓的,叫什么都行,只要符合规范就行。原则上来说,非常建议把它写成这种形式,因为比较容易和头文件的名字对应。
源文件(.cc):
源文件主要写实现头文件中已经声明的那些函数的具体代码。需要注意的是,开头必须#include一下实现的头文件,以及要用到的头文件。那么当需要用到自己写的头文件中的类时,只需要#include进来就行了。
例子:
下面举个最简单的hello的例子描述一下。
第一步,建立一个空工程。
第二步,建立名为Hello.h的头文件,内容如下:
#ifndef HELLO_H
#define HELLO_H
using namespace std;
class Hello
{
private:
std::string name;
public:
Hello();
Hello(std::string name);
void hello();
};
#endif
第三步,建立名为Hello.cc的头文件,内容如下:
#include <iostream>
#include "Hello.h"
using namespace std;
Hello::Hello()
{
this->name = "Tom";
}
Hello::Hello(std::string name)
{
this->name = name;
}
void Hello::hello()
{
cout << "Hello " << this->name;
}
第四步,建立一个test.cc来测试Hello类。内容如下:
#include <iostream>
#include "Hello.h"
using namespace std;
int main()
{
Hello h("Jerry");
h.hello();
return 1;
}