c 對const增強 和cosnt分配記憶體情況

2021-09-25 01:12:07 字數 721 閱讀 7040

c語言中const是偽常量,可以通過指標修改

c++中const會放到符號表中

c語言中const預設是外部連線,c++中const預設是內部鏈結

#includeusing namespace std;

const int m_a = 10; //在全域性區域裡,受到保護,不可以被更改

/*c語言中,const修飾的變數,是偽常量,編譯器是會分配記憶體的、

c++中,const不會分配記憶體,const int m_b=20;

*/void test07()

int main()

對變數取位址,會分配臨時記憶體

extern關鍵字下的const會分配記憶體

用普通變數初始化cosnt變數

自定義資料型別會分配記憶體

#include#includeusing namespace std;

分配記憶體,取位址會分配臨時記憶體

編譯器也會給const 變數分配記憶體

void test01()

//3.用變數初始化const的變數

void test02()

//4.自定義資料型別 加const也會分配記憶體

struct person

; void test03()

int main()

c 對c的增強

include using namespace std cout helloworld 命名空間下,可以放函式,變數,結構體,類.命名空間必須定義在全域性作用域下 命名空間可以巢狀命名空間 命名空間是開放的,可以隨時往原先的命名空間新增內容 無名,匿名命名空間 當寫了無名命名空間,相當於寫了stat...

c 對c的增強

本文主要介紹c 對c語言所增強的內容c語言中的變數都必須在作用域開始的位置進行定義 c 中強調語言的 實用性 所有的變數都可以在需要的時候進行定義 c語言的struct定義了一組變數的集合,c編譯器不認為這是一種資料型別 c 中的struct是乙個新型別的定義宣告 在c語言中 int f 表示返回值...

C 中類的const成員函式和const物件

2.const成員函式 即普通成員函式後再加const。它可以讀取資料成員的值,但不能修改它們。若要修改 時,資料成員前必須加mutable。以指定其可被任意更改。mutable是ansic 考慮到實際程式設計時,可能一定要修改const物件中的某個資料成員而設的。const成員函式可以被相同參數列...