C const保護陣列

2021-08-06 00:00:00 字數 387 閱讀 8267

使用普通函式時,由於實際使用的是函式所用資料的副本,所以在函式中修改副本的值並不能改變其原本資料的值。但是在以陣列為引數的函式中,由於引數傳遞的是位址的副本,因此可以根據位址的副本去改原陣列的值。而在很多時候我們僅僅需要獲取陣列的值,不願意讓函式有改變原陣列的權利,這時我們可以用const保護陣列。

void show(const

double arr,int n);

該宣告說明,指標arr指向的是常量資料。這意味這不能使用arr修改資料,也就是說可以使用arr[0],但是不能修改它。但是會這並不以為著原始資料是常量,僅僅意味著不能在show()函式中使用arr來修改這些資料。

將const變數的位址賦給指向const的指標,但不可以用常規指標指向const變數。

c const 共用資料成員保護

const int pi 46 保證資料成員不被改變的物件,可以宣告為常物件class time private int hour int minute int sec intmain 類名 const 物件名 實參表列 const 類名 物件名 實參表列 常成員可以訪問常物件的資料成員 class...

c const使用詳解

關於c 中的const關鍵字的用法非常靈活,而使用const將大大改善程式的健壯性,現將本人的一些體會總結如下,期望對大家有所幫助 一 const基礎 如果const關鍵字不涉及到指標,我們很好理解,下面是涉及到指標的情況 int b 500 const int a b 1 int const a ...

C const引用詳解

文章 http blog.csdn.net k2eats archive 2008 06 12 2541790.aspx 1 在實際的程式中,引用主要被用做函式的形式引數 通常將類物件傳遞給乙個函式 引用必須初始化 但是用物件的位址初始化引用是錯誤的,我們可以定義乙個指標引用。1int ival 1...