C 學習 const引數修飾符

2021-10-12 10:08:20 字數 554 閱讀 6072

「傳引用」引數效率上優於「傳值」引數。傳值引數是區域性變數,被初始化成實參的值,所用呼叫函式時候存在對實參的兩個拷貝(位址和資料?)。而傳引用引數只作佔位符,所以只存在對實參的乙個拷貝(位址?)。類作為引數使用時,有必要使用傳引用引數,而不使用傳值引數,即使函式的內部不改變引數。

在引數型別前新增修飾符const。這樣的引數是常量引數。使用常量引數時,在函式宣告和函式頭的定義中都必須使用修飾符const,保持一致。

類的物件在呼叫成員函式時,呼叫物件的行為和傳引用引數很相似。應用於引數的修飾符const以同樣的方式應用於呼叫物件,如果成員函式不更改物件的值,就可以使用const標記該函式。例:

class a

const在函式宣告及定義中,對特定型別的物件引數使用const之後,對於在函式主體中對引數的成員函式的呼叫必須也是const的。

將物件引數宣告為const,表示在函式呼叫過程中不會修改物件的值。若在函式主體中物件呼叫了其成員函式(對物件進行操作),這個成員函式必須在類的定義中宣告為const,表示這個操作不會修改物件。

C 中const修飾符

const只對它左邊的東西起作用 唯一的例外就是const本身就是最左邊的修飾符,那麼它才會對右邊的東西起作用。指標常量 關鍵字順序為 const 和中文順序一致 例如 int const a,表示指標a是乙個常量,初始化後不可更改 永遠指向某個物件 但是指向的物件的值可以修改,如 a 10 常量指...

C ,,引數修飾符

函式內給引數賦值,不改變實際引數的值。即修改只在函式中,函式執行完就失去生命週期了。private void form1 load object sender,eventargs e public void mes string str 首先顯示函式內的列印資訊 可以看見str的資訊改變 函式內 隨...

const 型別修飾符

const是用來限定所指定的變數或者函式不可作修改。1 修飾變數 當const用來修飾變數的時候,const所指定部分不可修改。a.修飾常規變數 如 const int a 10 int const a 10 這兩種方式的效果一樣,都是將a描述為常量,a的值在被賦初值後不可以修改。但是這和由巨集定義...