在程式開發過程中,需要一些保持不變、無法被修改的量。c++中可以用const進行修飾。
注意事項:
const
int buffer_size;
//錯誤,宣告時沒有進行初始化
//錯誤
(m)//使用初始化列表初始化const常量
democlass::
~democlass()
//檔案1
const
int my_size =
512;
//檔案2
#include
#include
"democlass.h"
using
namespace std;
extern
const
int my_size;
//使用exern宣告常量已經在其他檔案中完成定義
//參看上面只宣告,不初始化的報錯資訊
intmain()
const
double pi =
3.14
;const
double
&pi = pi;
//正確寫法
double
&pi = pi;
//錯誤,報錯資訊如下,非const修飾的引用不能指向const物件
指標常量:指標指向乙個固定的位址,無法被修改(標誌:const關鍵字出現在* 右側)指標自身的值是乙個常量,不可改變,始終指向同乙個位址。在定義的同時必須初始化。
int a =
10, b =20;
int*
const p =
&a;*p =30;
// p指向的位址是一定的,但其內容可以修改
常量指標:指向乙個常量的指標,指標可以指向不同的常量,但是不可以通過指標修改常量的值。(標誌:const關鍵字出現在 *號左側)
int a =
10, b =20;
const
int*p =
&a;p =
&b;// 指標可以指向其他位址,但是內容不可以改變
const
int*
const ptr6 =
&m;// 指向「常量」的指標常量,具有常量指標和指標常量的特點,指標內容不能改變,也不能指向其他地方,定義同時要進行初始化
*ptr6 =5;
// 錯誤,不能改變指標內容
ptr6 =
&n;// 錯誤,不能指向其他地方
關於初始化方式:
#include
using
namespace std;
classa;
int a::aa =20;
//靜態成員變數定義並初始化
const
int a::count =25;
a::a
(int a):bb
(a)a::~a
()
參考:
const、static和extern的正確使用方式
const關鍵字
指標常量和常量指標
c 知識點總結
1 c 中判斷物件為空的幾種方式 1 先了解幾個與空型別相關的關鍵字和物件 null 關鍵字表示不引用任何物件的空引用,它是所有引用型別變數的預設值,在2.0版本之前也就只有引用變數型別可以為null,如 string a null 但在c 2.0版本之後,net也引入了可以為null的值型別,但變...
C 知識點總結
程式 資料結構 演算法.c語言是面向過程的,面向過程就是分析出解決問題的步驟,然後用函式將其實現,使用時依次呼叫.程式 物件 訊息.c 是物件導向的,c 物件導向是將構成問題的事物分解成各個物件,每個物件完成在解決整個問題中的行為.主要特點是類,封裝,繼承,多型等。物件導向的語言具有更好的可擴充套件...
C 知識點總結
變數和常量 命名變數 在c 中,使用變數的基本原則是先定義後使用。其命名規範如下 1.必須以字母或下劃線開頭 2.只能由字母 數字 下劃線組成,不能 包含空格 標點符號 運算子及其他符號 3.不能與c 關鍵字同名,如class,new等 例如,正確命名 int i 整型變數 stringuser n...