c 的學習筆記之二

2021-08-27 17:37:49 字數 911 閱讀 7907

1. 類中定義的靜態變數在編譯時沒有出錯,但是在鏈結時出現錯誤,原因是該靜態變數沒有初始化。

class obj ;

vectorobj::vstr;

這樣在別的地方就可以使用該靜態變數了,具體使用方法很簡單,只要obj::vstr 即可。

2. 乙個類中宣告了乙個指標後,要記得初始化時將此指標賦為空值,在使用時先判斷此指標是否為空,否則在使用乙個未定義的指標時,會有錯誤出現;另外在重置指標時,不僅要**new物件,而且最好將指標賦為null;

3. 在乙個類中malloc或者new出來的空間,只需在此類的析構函式中進行**,另外,將所使用的容器(vector, list等)清空即可。

4. 使用物件的get方法返回的資料,最好能使用引用返回。下附函式返回說明:

1)主函式main的返回值:這裡提及一點,返回0表示程式執行成功。

2)返回非引用型別:函式的返回值用於初始化在跳用函式出建立的臨時物件。用函式返回值初始化臨時物件與用實參初始化形參的方法是一樣 的。如果返回型別不是引用,在呼叫函式的地方會將函式返回值複製給臨時物件。且其返回值既可以是區域性物件,也可以是求解表示式的結果。

3)返回引用:當函式返回引用型別時,沒有複製返回值。相反,返回的是物件本身。

int &func(int& a) 

int main(int argc , char* args)

執行結果:

&a=0x0012ff7c,&b=0012ff78

這裡可以看到,返回變數的位址和傳入位址是不同的。變數b是main函式中自己的棧中生成的。

int& c=func(a)

那麼c就是指向a,

a變化那麼c也跟著變化,

在上面b的情況,

是重新分配了乙個空間,

因此不會同步變化。

elasticsearch學習筆記之二(CURD)

本文介紹elasticsearch的概念和curd 2.2 建立文件 表和記錄 2.3 更新文件 2.4 刪除文件 2.5 查詢文件 2.6 刪除型別 表 例如 http localhost 9200 blog user 1 關係型資料庫 elasticsearch 資料庫 blog index 表...

C 學習筆記之二 C 基礎學習

因為作者本人以前就在使用c 雖然基礎不夠紮實,但是對一些基礎的知識還是有一些了解和應用的。為了查缺補漏,對於基礎c 的知識會較快速的掠過,以前漏掉的知識點會在本章節中記錄整理,已經熟悉的知識就不再贅述了。注意 1 c 也能夠使用printf scanf 和其他所有標準c輸入和輸出函式,只需要包含常規...

SDL學習筆記之二

sdl su ce image sdl loadbmp image.bmp 2.從乙個表面,進行塊複製到另乙個表面 sdl blitsu ce int sdl blitsu ce sdl su ce src,sdl rect sr,sdl su e dst,sdl rect dr 第二個引數指定要傳...