Q
常量整數簡單
-3
A
回答
0
你的變量i
被聲明爲const
,這意味着它只能被初始化,但不能在後面的代碼改變。但是,如果所有常量必須具有值3
,那麼這是沒有意義的,你不同意嗎?所以在初始化時,你可以將它設置爲你喜歡的任何整數值;但編譯器不會允許您稍後在代碼中更改它;試試這個,它會給你一個編譯器錯誤:
const int i = 3;
// ...
i = 44; // <- here the compiler will complain, saying that i was declared const
1
你永遠不會改變的i
價值,對不對?
const int i = 44; // initialization - OK
i = 44; // assignment - not OK
0
const意味着一旦設置,您不能在執行過程中更改該變量的值。但是,價值可以設置爲任何第一次。
1
語句const int i = 3
告訴C++編譯器i
是int類型的變量,它是一個常數,具有值3。
這意味着任何進一步的嘗試來改變i的值會導致編譯錯誤。在您的示例代碼中,您不能在第一次初始化後更改i的值。
0
它的工作,因爲你沒有在你的代碼
const int i = 44; // Initialization of a const value, OK.
cout << i; // Just reading the value, this is OK
i = 44; // This will not work because you can't change the value of a const type.
0
它的工作原理,因爲在C++ 初始化和分配之間的差異「我」改變的值。
當你聲明一個變量,你可以選擇將其初始化:
int i; // i is uninitialized
int j = 42; // j is initialized
這一點後
,一旦變量存在,你不能再對其進行初始化。它具有現在的任何價值(i
有一些隨機垃圾值,j
的值爲42
)。所有你能做的卻是分配一個新的值給它:
i = 43;
j = 44;
當一個變量是常量,你不能分配一個新的值給它。你仍然可以初始化它,但是一旦它被初始化,它永遠不會改變。
所以const int i = 44
是完全有效的,因爲你是初始化一個新的變量,而不是分配新價值的現有變量。
相關問題
- 1. 錯誤:整數整數::運算<<(常量整數&,常量整數&)'必須採取只有一個參數
- 2. 常量聯繫API簡單形式
- 3. 整數常量不等於常規整數?
- 4. 整型常量
- 5. 向量化一個非常簡單的pandas lambda函數apply
- 6. 花車和整數簡單的問題
- 7. 簡單的PHP整數轉換
- 8. 簡單整數正則表達式
- 9. 簡單整數字段保存爲零
- 10. 用簡單整數返回SQL_NEED_DATA
- 11. 簡化常數
- 12. 與常量的整數除法
- 13. PHP最大可能的整數常量
- 14. GO郎 - 常量截取到整數
- 15. 簡單調整大小
- 16. C#非常簡單的圖像調整器
- 17. 非常簡單的java cms
- 18. C#簡單異常輸出
- 19. 非常簡單的代碼
- 20. 非常簡單的查詢
- 21. 簡單提取非常慢
- 22. 非常非常簡單的MVVM問題
- 23. 整型常量是 「長」 型
- 24. 外部整型常量
- 25. 與項目數量的簡單關係
- 26. 按數量SQL簡單分解
- 27. 整型常量是「不能減少到一個整數」
- 28. 簡單整潔的方法來調用多個變量
- 29. XNA的非常簡單的菜單
- 30. Django模板 - comapring變量整型常量
如果'const'意味着你甚至不能爲一個符號分配一個* initial *值,那麼完全沒用它。 – 2011-12-29 12:34:07