1. 程式人生 > >C++中的標頭檔案(.h)和原始檔(.cc)

C++中的標頭檔案(.h)和原始檔(.cc)

標頭檔案(,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;
}