C 核心技術篇(二)

2021-10-03 02:11:51 字數 1599 閱讀 1110

在前面的章節我們經常會用到輸入輸出流、字串的標頭檔案(。h),其中包含資料和函式宣告。而這些檔案的實現部分一般會放到與標頭檔案同名的實現原始檔中(。cpp).

在乙個原始檔中使用#include指令,可以將標頭檔案的全部內容包含進來,也就是將另外的檔案包含到本檔案中。#include指令是編譯程式將另乙個檔案嵌入帶有#include的原始檔,被讀入的原始檔必須使用雙括號或尖括號括起來。例如:

#include

#include

"stdio.h"

上面給出了雙括號和尖括號的形式,這兩者之間的區別在於,用尖括號時,系統到存放c++庫函式標頭檔案所在目錄中尋找要包含的檔案,這種稱為標準方式;用雙引號時,系統先在使用者當目錄中尋找要包含的檔案,若找不到,在到存放c++庫函式標頭檔案所在目錄中尋找要包含的檔案。通常情況下,如果為了呼叫庫函式而用#include命令來包含相關的標頭檔案,則用尖括號,可以節省查詢時間。如果為了呼叫庫函式而用#include命令來包含相關的標頭檔案,則用尖括號,可以節省查詢時間,如果要包含的是使用者自己編寫的檔案,一般用雙引號,使用者自己編寫的檔案通常是在當前目錄中。如果檔案不在當前目錄中,雙引號可以給出檔案路徑。

物件也稱類的事例化。定義新類後,可以通過類名來宣告乙個物件

當類的物件被銷毀時,編譯器會呼叫類的析構函式。與建構函式相比,析構函式主要執行的是收尾工作。建構函式名識別符號和類名識別符號相同,析構函式名識別符號就是類名識別符號前加「~」。

例如

~

cperson()

;

下面用乙個例子來介紹析構函式的呼叫

例:析構函式的呼叫『

#include

#include

using

namespace std;

class

title

;

title.**件中宣告乙個title類

#include

#include

"stdafx.h"

#include

"title.h"

using std::cout;

using std::endl;

title::

title

(string str)

title::

title()

title::

~title()

含有main函式的cpp,表示程式的入口,**如下:

#include

"stdafx.h"

#include

"title.h"

#include

using

namespace std;

intmain()

cout<<

"if執行完成"

}

從程式執行結果來看,首先產生了」hello word「標題,之後產生了if語句塊中的無名標題。if語句塊執行完畢後,物件t被銷毀。然後用輸出語句標識了分語句塊的完成。程式執行完畢,**所有記憶體。out標題被銷毀,自身析構函式被呼叫。

C 核心技術篇(一)

簡介 目前,物件導向的設計思想已經被廣泛應用和認可。物件導向程式設計可以有效解決 復用的問題,他不同與以往的面向過程程式設計,面向過程程式設計需要將功能細分,而物件導向需要將不同功能抽象到一起。類是物件的實現,也可以是從現實生活中抽象的物件。物件導向的英文縮寫是oo,它是一種設計思想,現在這種思想已...

C 核心技術篇(四)

指向相應物件的指標就是物件的指標,他宣告的方法與其他型別一樣,如下 類名 p 類的指標可以呼叫它所指向物件的成員。形式如下 p 類成員下面來看乙個例子 函式指標呼叫類成員 該例子定義乙個貓類,且貓有名字,會發出叫聲。cat.件 如下 include using std string class ca...

C核心技術手冊(二)

組成c 程式的 積木 叫做函式,每個函式都有自己的用途,並且可以相互呼叫。每個函式包含可被執行的語句,而這些語句可以分組,從而形成語句塊。做為程式設計師,你可以直接使用 c標準庫的的函式,也可以自己編寫函式來實現既定目的。除此之外,還有很多專用的庫可以使用,例如圖形函式庫。然而,使用這些非標準庫,會...