C++中聲明與定義的區(qū)別解析
推薦 + 挑錯(cuò) + 收藏(0) + 用戶評(píng)論(0)
首先談下聲明與定義的區(qū)別。
聲明是將一個(gè)名稱引入程序。定義提供了一個(gè)實(shí)體在程序中的唯一描述。聲明和定義有時(shí)是同時(shí)存在的。
3如int a;
extern int b=1;
只有當(dāng)extern中不存在初始化式是才是聲明。其他情況既是定義也是聲明。
但是在下列情況下,聲明僅僅是聲明:
1:僅僅提供函數(shù)原型。如void func(int,int);
2: extern int a;
3:class A;
4:typedef聲明
5:在類中定義的靜態(tài)數(shù)據(jù)成員的聲明
3:在類定義之外,定義并初始化一個(gè)靜態(tài)數(shù)據(jù)成員。如 A::a=0;
2:在類外定義非內(nèi)聯(lián)成員函數(shù)。
聲明僅僅是將一個(gè)符號(hào)引入到一個(gè)作用域。而定義提供了一個(gè)實(shí)體在程序中的唯一描述。在一個(gè)給定的定義域中重復(fù)聲明一個(gè)符號(hào)是可以的,但是卻不能重復(fù)定義,否則將會(huì)引起編譯錯(cuò)誤。但是在類中的成員函數(shù)和靜態(tài)數(shù)據(jù)成員卻是例外,雖然在類內(nèi)它們都是聲明,但是也不能有多個(gè)。
非常好我支持^.^
(0) 0%
不好我反對(duì)
(0) 0%
下載地址
C++中聲明與定義的區(qū)別解析下載
相關(guān)電子資料下載
- 模仿RT_Thread的設(shè)備驅(qū)動(dòng)模型,使用C++實(shí)現(xiàn) 39
- Rust語(yǔ)言為什么這么卷? 21
- OpenCV4.8在Debug模式下滾動(dòng)條錯(cuò)誤問(wèn)題解決與原因查找 39
- 如何實(shí)現(xiàn)RTOS、中間件和芯片廠商API的跟蹤可觀察性? 178
- 關(guān)于魚(yú)眼相機(jī)標(biāo)定的畸變與矯正的分享 75
- 如何本地部署大模型 132
- 步進(jìn)電機(jī)是如何工作的? 151
- C語(yǔ)言開(kāi)發(fā)如何將錯(cuò)誤扼殺在編譯階段 85
- 如何用Rust通過(guò)JNI和Java進(jìn)行交互 120
- 宏編程實(shí)現(xiàn)原理詳解 26