c 學習記錄(一)

2021-10-05 16:36:20 字數 663 閱讀 9154

函式簽名:除函式名以外的返回型別、引數等

#include<>格式:引用標準庫標頭檔案,編譯器從標準庫目錄開始搜尋

#include「」格式:引用非標準庫的標頭檔案,編譯器從使用者的工作目錄開始搜尋

malloc、free函式:#include

運算子過載 &,有些時候函式宣告在operator前有&…有時候沒有…為什麼?(int &operator(int n))

&表示返回值型別是引用

什麼時候需要返回引用, 基於兩點

第一是需求, 有些情況語法要zd求必須返回引用

比如過載=操作符, 返回引用才專可寫出 a1=a2=a3這樣的語句

再如操作符, 返回引用才能實現這樣的語句: a[0]=1;

第二是效率問題:

很多情況是不需要返回引用的, 比如雙目的+, 可以是返回乙個物件的副本, 但是返回引用比返回物件的副本效率要高, 因為返回副本最少要有兩次拷貝構造被呼叫, 對於乙個體積比較大的類來說, 時間上的開銷還屬是要考慮的. 所以這時常用返回const引用來代替返回副本.

fun(const &int n);在呼叫時的作用相當於fun(int n);,因為後者在呼叫時需要複製一遍n的值,將其副本賦值給返回值,這種方法在引數型別非常大時十分浪費時間,因此有了前者的表達形式,用引用符號取引數位址,但又通過const防止改變引數的值,妙啊

C 學習記錄一

概述 一 嵌入式開發中為什麼學習c 語言?1 嵌入式軟體工程師崗位需求 2 面向過程程式設計vs物件導向程式設計 面向過程程式設計的特點 c語言的特點 c語言是在時間的過程中逐步完善起來的 沒有深思熟慮的設計過程 使用時存在很多 灰色地帶 殘留量過多低階語言的特徵 直接利用指標進行記憶體操作 c語言...

C 學習中記錄(一)

js中的頁面跳轉和顯示 function searchform thisform,width,height 將查詢畫面的查詢條件返回父畫面 document.getelementbyid 記錄資料 value returntarget 0 cleradioboxsituationstr showlo...

個人C 學習筆記記錄(一)

extern const int a 1 這樣定義的常量才能被引用 extern const int a 是引用常量 在乙個工程中不能重複定義全域性變數 int a 3 int b a 用來引用a a的另乙個名字是b。不能用int b 3 這樣的形式。但是對於常量而言可以用const int b 3...