簡單記錄一下最近學到的c 內容

2021-08-13 18:17:42 字數 2258 閱讀 4614

歷經兩個月的學習,c++終於學習到了類與物件部分,因為我也學藝不精,所以也寫不出什麼技術文,只是藉此記錄一下我最近學到的內容與一些想法來督促自己學習。(主要還是寫下來以後看的時候好嘲諷以前還是萌新的自己2333333)

1.類為物件導向的程式設計,可以資訊封裝的基礎。首先,要定義類與物件,用到了一下語句:

class xx

後一定要記得加上「 ; 」。而在類外定義使用成員函式時使用: 返回型別  xx::函式名 (參數列)

例如,我此時定義乙個類:

class book

{ public:

int booknumber();

當我需要在類外定義其中的成員函式時,語句為:

int book::booknumber()

************x 

大致如此。

2.簡單的建構函式與析構函式

建構函式與析構函式都是類中特殊的成員函式。建構函式與析構函式都由系統自動呼叫,不同點在於建構函式在建立類物件時呼叫,而析構函式在類物件作用域結束時呼叫。而且在消亡時為先產生的物件後消亡,而且他們都不能被定義在private部分。建構函式的原型為: 類名::類名(參數列);       析構函式的原型為:  類名::~類名();

而當建構函式帶引數時,可以用指定的資料來初始化物件的資料成員。下面寫乙個例子:

class  date

{ public:

date(int,int,int);

~date();

void setdate(int y,int m,int d);

void printdate()const;

private:

int year,month,day;

date::date(int y,int m,int d)

year=y;

month=m;

day=d;

coutyear=y;

month=m;

day=d; 

void date::printdate()const

cout<<"today is "date d(1989,12,13);

d.setdate(2017,12,18);

d.printdate(); 

執行結果為:

1989/12/13 is taylor's birthday!

today is 2017/12/18

所以帶引數的建構函式是有這種操作的。

此外還有乙個操作叫「複製建構函式」,用於建立物件時用乙個已有的同型別物件的資料對其進行初始化。語句為: 類名::類名(const 類名 & 引用名, ...); 但具體的操作我暫時還沒有用到,所以暫時不做記錄。

3.類中的其他成員

(1)常成員

常成員的定義用const來約束。常成員中又包含常資料成員、常物件、常成員函式等。

對常資料成員而言,既可以通過在建構函式中直接用常量來初始化,也可以用帶引數的建構函式來對常資料成員初始化,這裡不做太多解釋。

常物件則是在定義物件時以const為字首的物件,需要注意的是,常物件中的資料在作用域中約束為唯讀,不可修改。這裡也不做過多解釋。

常成員函式則是以const為字尾的成員函式,這樣的成員函式中的資料也是不能修改的。例如之前寫到的 int printdate()const; 就是這樣的乙個成員函式。

這一部分好像相當簡單的樣子。。。。。

(2)今天剛學到的新知識:靜態成員

當類成員以static宣告時,就成為了靜態成員。之前一直不太明白所謂的「靜態」是什麼意思,查過之後才知道「靜態」指的是其作用域區域性與類。(大佬們別笑話我)

在類中,宣告static資料成員和其他資料成員一樣不會建立儲存空間,而且static資料成員儲存空間建立不依賴於物件。

靜態成員宣告時可以放在private裡作為私有靜態成員,也可以放在public裡作為公有靜態成員,需要注意的是作為私有靜態成員時不能在main函式中直接訪問。

而當成員函式以static宣告時,就稱為靜態成員函式。

舉個栗子吧:

class x

int datmem;

public:

static void abc();

此時我要在類外呼叫靜態成員函式

void m()

x obj;

x::abc();

obj.abc(); 

對於x::abc();與obj.abc();都是正確的,都可為靜態成員函式的入口位址。

不過對於靜態成員這部分,我暫時還沒有寫過具體的程式,關於具體的寫法與想法我會在具體掌握之後再做一次補充。

記錄一下最近的心情

qq空間一直不好用,只好轉到這裡,寫一寫最近的心情。這幾天發生了很多事情。在同病魔搏鬥了很久之後,奶奶撒手人寰,離我們而去了。對於親人的離開,我沒有經受過太多,爺爺走的時候我才十歲,姥姥走的時候因為種種原因我沒有收到訊息。現在奶奶也去了。我很難過。我沒有盡到孫子的孝心,沒有特別在意這個將我一直掛在嘴...

最近看了不少電影,記錄一下

偏安一隅 一片銀白色的世界 雪花從天空飄落 銜接雲朵與人間 你是我年少時的歡喜 至今六年 所有賬號的密碼仍然與你有關 我可以刪除所有的 刪除與你所有的聯絡 唯獨這個成為了習慣的東西 是再也改不了了 勇敢一點 勇敢一點 現在不經歷 以後也得補上 所以呀,勇敢吧 世間之人為情所困 也不過你喜歡的不喜歡你...

記錄一下最近的碎碎念

我的專業其實不算是計算機,我是計算機師範的一名學生,現在是大一下學期,我的專業課只有一門物件導向程式設計 c 和一門離散數學。最近一直在搞理論知識,正在自學演算法與資料結構和數位電路與邏輯設計。演算法與資料結構我是用的 啊哈!演算法 大話資料結構 來自學的,把它們學完後我估計自己就入門了。之前在拼多...