類宣告和成員函式定義的分離

2021-08-18 02:41:05 字數 1156 閱讀 6319

當乙個類被多個程式使用時,一般將

類的宣告(包含成員函式的宣告)

放在指定的

標頭檔案中,使用者程式設計時,只需將這個標頭檔案包含進來,而不必在每個使用該類的程式中重複書寫其宣告。

為了實現資訊隱蔽(即封裝後,使用者只能看到函式的宣告,知道如何去使用它,而不知道函式具體是如何實現的),對類的成員函式的定義一般不放在標頭檔案中而放在另乙個源**檔案中。

下面我們以乙個小例子來理解一下

[cpp]view plain

copy

/* 我們可以看到標頭檔案中包含類的宣告(包括成員變數及成員函式的宣告),但沒有成員函式的定義*/

#include 

using

namespace

std;   

//避免發生重新命名的問題

class

markbook ;  

[cpp]view plain

copy

/markbook.cpp  

/*該原始檔包含標頭檔案中所定義的成員函式的定義(具體實現過程),將函式宣告與函式實現分離*/

#include "stdafx.h"

#include "markbook.h"

#include 

#include 

using

namespace

std;  

markbook::markbook(string name)   

void

markbook::setcoursename(string name)   

string markbook::getcoursename()   

void

markbook::showmessage(string coursename)   

[cpp]view plain

copy

#include "stdafx.h"

#include "markbook.h"

#include 

#include 

using

namespace

std;  

int_tmain(

intargc, _tchar* argv)  

類中宣告的函式和類的成員函式

define crt secure no warnings include using namespace std class a void a f1 void f int main 在類內宣告的函式未必是類的成員函式,也許只是宣告一下,告訴編譯器,我有這個函式。編譯器說,好,我知道了。但是實現f ...

c 類資料成員的定義 宣告

c 為類中提供類成員的初始化列表 類物件的構造順序是這樣的 1.分配記憶體,呼叫建構函式時,隱式 顯示的初始化各資料成員 2.進入建構函式後在建構函式中執行一般計算 1.類裡面的任何成員變數在定義時是不能初始化的。2.一般的資料成員可以在建構函式中初始化。3.const資料成員必須在建構函式的初始化...

冒號 定義成員函式 5)類的申明和成員函式定義分離

前面我們學習了如何定義類,以及如何使用類的成員,在前面我們把成員函式都定義在了類的內部,接下來我們學習,如何把類的定義和成員函式的實現分離。在物件導向的程式開發中,一般做法是將類的宣告 其中包含成員函式的宣告 放在指定的標頭檔案中,使用者如果想用該類,只要把有關的標頭檔案包含進來即可,不必在程式中重...