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...