C中的const形參,C const的用法

2021-03-22 03:06:48 字數 3309 閱讀 3387

1樓:匿名使用者

只有c++才會有這個疑問,我也是

int add(const int& aa)

2樓:匿名使用者

其實不用ref const,比如string, 你就直接ref string就可以了,而定義這個string的時候,前面加上const就ok了。我想這就是樓主想要的效果吧。

3樓:小沛

汗,你不用關鍵字ref直接傳遞一個值型別變數進去 就只是這個值型別的副本,在方法體中就算改變了那個值型別副本 又不影響你實際的那個值型別變數啊

你到底想幹啥子哦

4樓:匿名使用者

readonly或用屬性

5樓:匿名使用者

c#中const是宣告常量的關鍵字!

c# const的用法 20

6樓:匿名使用者

使用 const 關鍵字來宣告某個常量欄位或常量區域性變數。

***************==

注意:常量欄位和常量區域性變數不是變數並且不能修改。  常量可以為數字、布林值、字串或 null 引用。

 不要建立常量來表示你需要隨時更改的資訊。  例如,不要使用常量欄位來儲存服務的**、產品版本號或公司的品牌名稱。  這些值會隨著時間發生變化!

常數宣告可以宣告多個常數,例如:

public const double x = 1.0, y = 2.0, z = 3.0;

不允許在常數宣告中使用 static 修飾符。

常數可以參與常數表示式,如下所示:

public const int c1 = 5;

public const int c2 = c1 + 100;

7樓:分享奇蹟

const 一般修飾 的變數

為只讀變數

const定義應該為在定義的時候初始化 以後不能改變他的值例:**如下:

const int a=1;//只能在定義的時候初始化;

a=2;//出現錯誤 因為a為只讀變數

const 修飾一些指標時候的用法

int a;

const int *p=&a;// *p是不允許改變的 但是p是允許改變的

int * const p1 //定義了一個只讀的變數p1 ;p1不可以改變 *p1是可以改變的

常數宣告可以宣告多個常數,例如:

**如下:

public const double x = 1.0, y = 2.0, z = 3.0;

不允許在常數宣告中使用 static 修飾符。

常數可以參與常數表示式,如下所示:

**如下:

public const int c1 = 5;

public const int c2 = c1 + 100;

8樓:蝦米意思呀

const 關鍵字用於修改欄位或區域性變數的宣告。它指定欄位或區域性變數的值是常數,不能被修改.

在c# 中static 和const的區別

9樓:非典型天秤座

static為靜態修飾符,可以放在物件

前面(函式也是一種物件)如:

class example

}可直接example.show();去呼叫這個方法而不用例項化當然也可以定義靜態的屬性:

public static string str="hello";

但如果這樣example.str="helloworld";就出現問題了

也就是客戶端可以在任何地方去改變str的值。這樣的話極容易產生錯誤,因為str的值是依靠example類的,隨時可以改變。比如再宣告一個類:

class class1

}class example

}要防止str值發生改變,就需要用到const修飾符public const string str="hello";//str被稱為常量

這是如果再對example.str賦值,則編譯器將產生錯誤用常量來儲存公共資料是最為合適的。

10樓:匿名使用者

static 是靜態的意思 const 這個是定義常量的就是不能改變的意思

11樓:匿名使用者

static執行時分配資源

const編譯時分配

c#中const與readonly區別

12樓:匿名使用者

readonly 關鍵字與 const 關鍵字不同。 const 欄位只能在該欄位的宣告中初始化。 readonly 欄位可以在宣告或建構函式中初始化。

因此,根據所使用的建構函式,readonly 欄位可能具有不同的值。 另外,const 欄位為編譯時常數,而 readonly 欄位可用於執行時常數

13樓:續米道閒靜

const

的概念就是一個包含不能修改的值的變數。

常數表示式是在編譯時可被完全計算的表示式。因此不能從一個變數中提取的值來初始化常量。

如果const

inta

=b+1;b是一個變數,顯然不能再編譯時就計算出結果,所以常量是不可以用變數來初始化的。

readonly

允許把一個欄位設定成常量,但可以執行一些運算,可以確定它的初始值。

因為readonly

是在計算時執行的,當然它可以用某些變數初始化。

readonly

是例項成員,所以不同的例項可以有不同的常量值,這使readonly更靈活。

readonly

關鍵字與

const

關鍵字不同。

1.const

欄位只能在該欄位的宣告中初始化。

readonly

欄位可以在宣告或建構函式中初始化。因此,根據所使用的建構函式,readonly

欄位可能具有不同的值。

2.const

欄位是編譯時常數,而

readonly

欄位可用於執行時常數。

3.const

預設就是靜態的,而

readonly

如果設定成靜態的就必須顯示宣告。

4.const

對於引用型別的常數,可能的值只能是

string

和null。

readonly可以是任何型別

總結const只能在初期就使用常量初始化好。對於每一次編譯後的結果,const的值是固定的,而readonly的值是可以在執行的時候才確定值的~~

c函式形參的問題c函式模板形參的問題

任何非 指向常量的指標 在這種情況下都是引用,你可以把這類指標看成是陣列,你也最好當char 是char,因為這裡正是以資料引用來傳遞,這裡t的型別是char 6 陣列之間不能轉換,但凡是轉換都有複製。其實,你這個程式不能在一個嚴格遵守c 規定的編譯器中編譯通過,不能從const char 到cha...

C或C中define和const的區別

define 就是一個巨集替換過程,不用開闢記憶體空間 const 定義了變數 要佔記憶體空間 1 編譯器處理方式不同 define巨集是在預處理階段。const常量是編譯執行階段使用。2 型別和安全檢查不同 define巨集沒有型別,不做任何型別檢查,僅僅是。const常量有具體的型別,在編譯階段...

c中的const何readonly關鍵字含義和作用有什麼區

常數表示式是在編譯時可被完全計算的表示式。因此不能從一個變數中提取的值來初始化常量。如果const int a b 1 b是一個變數,顯然不能再編譯時就計算出結果,所以常量是不可以用變數來初始化的。readonly 允許把一個欄位設定成常量,但可以執行一些運算,可以確定它的初始值。因為readonl...