變量聲明告知編譯器變量的外表特征,包含函數類型、函數名、參數列表和一個分號。例如:
int a;可以聲明變量 a就一個整數,這符合上面的邏輯。但這就產生了一個矛盾:這段帶碼有足夠的信息讓編譯器為整數a分配空間,而且編譯器也確實給整數a分配空間,要解決這個矛盾,對於C/C++要一個關鍵字來說明“這只是一個聲明,它的定義在別的地方”。這個關鍵字是extern,它表示變量是在文件以外定義的,或文件後面部分才定義。
下面是一些聲明的example:
//declare.cpp //delartaion&definition examples #include <iostream> using namespace std; extern int i; //Declaration without definition extern float f(float); //Function declaration float b; //Declaration and definition float f(float a){ // defintion cout<<"a="<<a<<endl; and="" declaration="" definition="" int="" pre="" return="" x="<<x<<endl; return x+1; } int main(){ b =1.0; i =2; cout<<"><p> </p><p> </p></a<<endl;></iostream>