《C 程式設計實戰》學習筆記

2021-06-18 11:02:15 字數 630 閱讀 9676

1.const的常見用法

函式引數前加const,說明此引數的值不能在函式內部被改變;在函式後面加const說明此函式不能改變該物件的任何成員變數,也不能呼叫該物件的任何非常量方法,而且對於常量物件只能呼叫宣告為const的方法。

2.using namespace std

如果沒有宣告此命名空間,使用cout,cin,endl時必須使用std::cout,std::cin,std::endl。

3.內聯函式

如果類的成員函式是在類定義的時候就實現的,則編譯器自動將其變成內聯函式,也就是編譯器在編譯的時候將呼叫此函式的地方直接替換成函式的**,不作為呼叫使用。但是即使成員函式是在類定義之外實現的一樣可以將其宣告為內聯函式,做法是在函式實現時在前面新增inline關鍵字。

4. assert

乙個巨集定義,如果沒有定義符號ndebug,此斷言就會檢查他的引數的邏輯正確性,即檢查是否為非零值,當斷言為假時,斷言將在程式的執行過程中被觸發,將列印一條指定源檔名,行號及不滿足條件的資訊。

5.引用

引用就是給乙個物件賦予乙個新的名字,通過該名字可以像操作原始物件一樣,你變我也變,我變你要變。

6. 函式引數引用傳遞和按值傳遞

引用傳遞是傳遞的物件本身,而按值傳遞則是乙份拷貝。

LinuxC程式設計實戰學習筆記 一

page 95 104 啟動 gcc g test.c o test g引數必須加 gdb test gdb 程式檔名 加上 q引數不輸出版權說明 gdb q 也可以直接輸入gdb,用file命令裝入需要除錯的程式 gdb file test gdb 是提示符 退出 gdb quit 顯示 gdb ...

C 併發程式設計實戰 閱讀筆記

1.當把函式物件傳入到執行緒建構函式中時,需要避免 最令人頭痛的語法解析 如果傳遞了乙個臨時變數,而不是乙個命名的變數 c 編譯器會將其解析為函式宣告,而不是型別物件的定義。例如 class background task background task f std thread my thread...

併發程式設計實戰筆記

template iterator 迭代器型別,t 內建資料型別 accumulate block iterator first,iterator last,t result templatet parallel accumulate iterator first,iterator last,t i...