C 中變數和類的定義

2021-07-09 07:49:00 字數 1073 閱讀 2511

一、 變數的宣告和定義

在c++語言中,變數只能定義一次,在使用變數之前必須定義或宣告變數。

1)變數的定義用於為變數分配儲存空間

,還可為變數指定初始值。

2)宣告用於向程式表明變數的型別和名字

。定義也是宣告:當定義變數時我們宣告了它的型別和名字。

可以通過使用extern關鍵字宣告變數而不定義它。

extern int i;  // 宣告但不是定義i

int i; // 宣告並且定義i

第一句的extern語句是宣告不是定義,不分配儲存空間。此句只是說明變數定義在程式的其他地方。程式中變數可以宣告多次,但只能定義一次。

帶初始化式的宣告:

如果宣告有初始化式(有儲存空間來進行初始化),那麼它可被當作是定義,即使宣告標記為extern:

extern int num=10; // 定義
使用了extern,該條語句還是定義了pi,分配並初始化了儲存空間。只有當extern宣告位於函式外部時,才可以含有初始化式。

因為已初始化的extern宣告被當作是定義,所以該變數的任何隨後的定義和含有初始化式的extern宣告都是錯誤的。

extern int num = 10; // 定義

int num; // 錯誤:重複定義變數num

extern int num = 10; // 定義 

extern int num; // 正確: 宣告不是定義

extern int num = 10; // 錯誤:重複定義變數num

在多個檔案中使用的變數應該有定義和宣告的嚴格分離。一般情況下,在乙個檔案中定義變數,其他使用該變數的檔案中宣告該變數(不是定義)。

二、類的定義

c++中可以使用關鍵字class或者struct來定義類。

如果使用class關鍵字定義類,成員的預設訪問屬性是private。

如果使用struct關鍵字來定義類,預設屬性是public。

使用class還是struct關鍵字來定義類,僅僅影響預設的初始訪問級別。

c 類和C 中定義類的定義

c 類和c 中定義類的定義 相同處 1.1.都需要使用 class標識 1.2.都包含有成員 函式,屬性 1.3.都有private public protect 標識的成員 2.不同之處 2.2.c 申明類及成員時格式 class member 一般在class的末尾處需要乙個英文分割符號 pub...

C中變數的宣告和定義

變數定義就是告訴編譯器在何處建立變數的儲存,以及如何建立變數的儲存。變數定義指定乙個資料型別,幷包含了該型別的乙個或多個變數的列表。變數宣告向編譯器保證變數以指定的型別和名稱存在,這樣編譯器在不需要知道變數完整細節的情況下也能繼續進一步的編譯。變數宣告只在編譯時有它的意義,在程式連線時編譯器需要實際...

C 類和類的定義

c 類和類的定義 在物件導向的程式設計中,有經常接觸類 物件等專業名詞 到底什麼是類 什麼是物件呢?在程式又是怎樣運用呢?類是物件導向程式設計的核心,它實際是一種新的資料型別,也是實現抽象型別的工具,因為類是通過抽象資料型別的方法來實現的一種資料型別。類是對某一類物件的抽象 而物件是某一種類的例項,...