c 中Const用法?什麼時候需要用const?Const放在類成員函式後有什麼用?Con

時間 2021-08-30 10:37:16

1樓:醉酒逝流年

簡單的說,const代表初始化外的時候都不能修改值函式的引數寫const主要是為了防止你改變引數內容比如 void f(cosnt int a); 你在f的函式體裡修改了a就報錯

const在類成員函式後面表示這個函式不能用類裡面沒有const修飾的變數

c++中的類成員函式後面的const是什麼意思??

2樓:匿名使用者

後面的const用來表示不能夠在函式內修改該類的成員變數。

3樓:使命聽一聽召喚

修飾類的成員函式,表示該函式不能修改物件資料成員的值。

並且const物件只能呼叫const成員函式。

4樓:紫色學習

c++中的類成員函式後面的const是用來表示不能夠在函式內修改該類的成員版變數。

c++是在權c語言的基礎上開發的一種通用程式語言,應用廣泛。c++支援多種程式設計正規化 --物件導向程式設計、泛型程式設計和過程化程式設計。最新正式標準c++14於2023年8月18日公布。

其程式設計領域眾廣,常用於系統開發,引擎開發等應用領域,是至今為止最受廣大程式設計師受用的最強大程式語言之一,支援類:類、封裝、過載等特性!

c++在函式宣告時,後面跟個const是什麼意思?

5樓:幻翼高達

c++在函式宣告時,後面跟個const是限定函式型別為常成員函式, 常成員函式是指不能改變成員變數值的函式。

例如「double d() const;」,其中的其中的「const」限定了d()函式中不能有任何改變其所屬物件成員變數值的功能,如果有則會在編譯階段就報錯。

它的主要作用就是能使成員函式的意義更加清楚,我們可在不改變物件的成員函式的函式原型中加上const說明。在需要增加可讀性和減少邏輯出錯的情況下,就可以用這種形式。

我們定義的類的成員函式中,常常有一些成員函式不改變類的資料成員,也就是說,這些函式是"唯讀"函式,而有一些函式要修改類資料成員的值。如果把不改變資料成員的函式都加上const關鍵字進行標識,顯然,可提高程式的可讀性。

另外,它還能提高程式的可靠性,已定義成const的成員函式,一旦企圖修改資料成員的值,則編譯器按錯誤處理。

6樓:釗鉼

const是乙個c語言(ansi c)的關鍵字,具有著舉足輕重的地位。它限定乙個變數不允許被改變,產生靜態作用。

使用const在一定程度上可以提高程式的安全性和可靠性。另外,在**別人**的時候,清晰理解const所起的作用,對理解對方的程式也有一定幫助。另外const在其它程式語言中也有出現,例如pascal、c++、php5、b#.

net、hc08 c、c#等。

const的作用:

1、可以定義const常量,具有不可變性。

2、便於進行型別檢查,使編譯器對處理內容有更多了解,消除了一些隱患。

3、可以避免意義模糊的數字出現,同樣可以很方便地進行引數的調整和修改。 同巨集定義一樣,可以做到不變則已,一變都變!

c++是c語言的繼承,它既可以進行c語言的過程化程式設計,又可以進行以抽象資料型別為特點的基於物件的程式設計,還可以進行以繼承和多型為特點的物件導向的程式設計。c++擅長物件導向程式設計的同時,還可以進行基於過程的程式設計,因而c++就適應的問題規模而論,大小由之。

c++不僅擁有計算機高效執行的實用性特徵,同時還致力於提高大規模程式的程式設計質量與程式語言的問題描述能力。

7樓:匿名使用者

這兒的const就是說這個函式操作不會對變數或是物件之類的值有影響 比如你有乙個human類 你現在要得到某個human類物件a的age 那麼肯定是不會因為你想得到這個值而改變了age的大小 對吧 那麼你就可以寫乙個函式int getage()const這樣就好 這麼做是為了防止你在函式中對不應該在這裡改變的量不小心進行了改變

8樓:韌勁

非靜態成員

函式後面加const(加到非成員函式或靜態成員後面會產生編譯錯誤),表示成員函式隱含傳入的this指標為 const指標,決定了在該成員函式中,任意修改它所在的類的成員的操作都是不允許的(因為隱含了對this指標的const引用);唯一的例外是對於 mutable修飾的成員。加了const的成員函式可以被非const物件和const物件呼叫,但不加const的成員函式只能被非const物件調 用。例如:

class a

int geta() const

int geta()

int seta(int a) constint seta(int a)

};a a1;

const a a2;

int t;

t = a1.geta();

t = a1.geta();

t = a2.geta();

t = a2.geta(); //a2是const物件,呼叫非const成員函式產生編譯錯誤。

9樓:淼淼

const修飾說明它是乙個常量,它的值是不能被修改的。沒有什麼地方是必須要用的,你只要覺得這個數字你不會改變就可以用。一般在函式傳遞引數中用的比較多,你可以看看c語言的庫函式引數中很多都是用const修飾的。

比如字串拷貝的宣告函式char *strcpy(char *dest,const char *src); 後邊的形參用了const修飾,在函式定義中src的值就不能被改變,dest的值就可以被改變,也是一種提示的作用說明字串是從src拷貝到dest中

cconst問題,C 中的const的用法

這樣解釋一下 int cc 5 int dd cc int ee cc int const aa dd aa 是 常指標,不允許 再指向別處,定義時初始化為 dd 的引用因為aa是常指標 所以 aa ee 會報錯 aa 1 允許 int cc 5 int dd cc int ee cc const ...

need needs的用法?什麼時候用needs

小貝貝老師 主語是第 一 二人稱或複數時用need,主語是第三人稱或單數時用needs,need和needs的用法如下 1 need用作實義動詞的基本意思是缺少急切需要的東西,強調急需。2 need是及物動詞,可接名詞 代詞 動詞不定式 動名詞作賓語,也可接以動詞不定式或過去分詞充當補足語的復合賓語...

Cflag用法,C 中flag 表示什麼

if prime n 這裡的prime n 返回值如果不是0則執行if內的語句,是0則執行else語句。而prime n 需要到子函式中判斷,也就是說看return 返回什麼結果 此題中只有是質數的才會返回1,才會執行if 0為假,非0為真 程式寫錯了 這裡的flag是乙個標誌,根據在prime 裡...