const 的一些理解

2021-04-19 04:51:10 字數 429 閱讀 9912

以前覺得自己對const還是有些理解的,今天一兄弟問了乙個問題才讓我對這個東西又加深了些了解

class temp

public:

void output();

void func(const temp & a)

a.output();

就這麼簡單乙個東西,眨眼一看,沒什麼問題,但是編譯是不會通過的,因為func呼叫了乙個非const的函式,那c++的用意何在呢?

首先看引數,const temo& a 乙個常量引用,表明這個a不會被修改,也不用拷貝,直接對它操作,但是在函式體內去呼叫乙個非const的變數,那麼有可能對a進行修改,所以c++就規定了,const的引數只能去呼叫const的函式,這樣避免宣告const引數卻被修改了的情況.

const 的一些知識

收集了別人關於 const 的一些論述。const 的用法很多很靈活,稍不注意,就會有些莫名其妙的問題出現。甲 用於定義乙個不能被更改的變數的時候 const int i 10 i 的值不能被改變,否則報錯 void fun const int i 在函式中,i 的值不能被改變,即使他是個區域性變數...

const的一些用法

關於 c 中的 const 關鍵字的用法非常靈活,而使用 const 將大大改善程式的健壯性,現將本人的一些體會總結如下,期望對大家有所幫助 一const 基礎如果 const 關鍵字不涉及到指標,我們很好理解,下面是涉及到指標的情況 int b 500 const int a b 1 int co...

理解C 裡面的const的一些用法

最近重新溫習c 的一些技術細節。其中關於const的用法,有了一些體會,因此記錄下來。1.關於傳引用的真正理解 簡單的說 如果函式直接用形參,是不會改變變數的值。如果函式用傳引用,就可以改變變數的值。但是,用形參,會造成資源的開銷。多出乙份拷貝。而用傳引用,由於直接操作變數的值,因此不會操作資源的多...