藍鷗iOS培訓(xùn)講師推薦:今天的課程是C++基礎(chǔ)篇里面的變量,那么變量又分為全局變量和局部變量兩大類,首先先了解一下有關(guān)它們的介紹!
10年積累的網(wǎng)站設(shè)計、網(wǎng)站建設(shè)經(jīng)驗,可以快速應(yīng)對客戶對網(wǎng)站的新想法和需求。提供各種問題對應(yīng)的解決方案。讓選擇我們的客戶得到更好、更有力的網(wǎng)絡(luò)服務(wù)。我雖然不認識你,你也不認識我。但先網(wǎng)站制作后付款的網(wǎng)站建設(shè)流程,更有赫章免費網(wǎng)站建設(shè)讓你可以放心的選擇與我們合作。一、全局變量
程序的編譯單位是源程序文件,一個源文件可包含一個或若干函數(shù),在函數(shù)內(nèi)定義的變量稱為局部變量,而在函數(shù)之外定義的變量稱為外部變量,也叫作全局變量,那么全局變量的有效范圍是從定義變量的位置開始到本源文件結(jié)束。例如:
p/q/c1/c2全是全局變量,不過它們的作用范圍不一樣,在main函數(shù)和f2函數(shù)中可用全局變量p/q/c1/c2,但是在f1中只可用全局變量p/q。
在一個函數(shù)中可使用本函數(shù)中的局部變量/有效全局變量
全局變量說明:
1、設(shè)全局變量的作用是增加函數(shù)間數(shù)據(jù)聯(lián)系的渠道
2、建議不在必要時不要使用全局變量,因為:
1)全局變量在程序的全部執(zhí)行過程中都占用存儲單元,而不是僅在需要時才開辟單元
2)它使函數(shù)的通用性降低了,因為在執(zhí)行函數(shù)時要受到外部變量的影響,如果將一個函數(shù)移到另一個文件中,還要將有關(guān)的外部變量及其值一起移過去,但若該外部變量與其他文件的變量同名,就會出現(xiàn)問題,降低了程序的可靠性和通用性。在程序設(shè)計中,在劃分模塊時要求模塊的內(nèi)聚性強,與其他模塊的耦合性弱,即模塊的功能要單一(不要把許多互不相干的功能放到一個模塊中),與其他模塊的相互影響要盡量少,而用全局變量是不符合這個原則的。
3)一般要求把程序中的函數(shù)做成一個封閉體,除了可以通過“實參——形參”的渠道與外界發(fā)生聯(lián)系外,沒有使用全局變量過多,會降低程序的清晰性,在各個函數(shù)執(zhí)行時都可能改變?nèi)肿兞康闹?程序容易出錯!因此,要限制使用全局變量。
3、如果在同一個源文件中,全局變量與局部變量同名,則在局部變量的作用范圍內(nèi),全局變量被屏蔽,即它不起作用。
變量的有效范圍稱為變量的作用域,歸納起來,變量有4種不同的作用域,文件作用域,函數(shù)作用域(functionscope),塊作用域(blockscope)和函數(shù)原型作用域(functionprototypescope),文件作用域是全局的,其他三者是局部的。
二、局部變量
在一個函數(shù)內(nèi)部定義的變量是內(nèi)部變量,只在本函數(shù)范圍內(nèi)有效,意思就是只能在本函數(shù)內(nèi)才能使,在該函數(shù)外不能用這些變量,一樣,在復(fù)合語句中定義的變量只在本復(fù)合語句范圍內(nèi)有效,稱之為局部變量。例如:
局部變量說明:
1、主函數(shù)main中定義的變量(m,n)也只在主函數(shù)中有效,不會因為在主函數(shù)中定義而在整個文件或程序中有效,主函數(shù)也不能使用其他函數(shù)中定義的變量。
2、不同函數(shù)中可以使用同名的變量,它們代表不同的對象,相互沒聯(lián)系,如,在f1函數(shù)中定義了變量b和c,倘若在f2函數(shù)中也定義變量b和c,它們在內(nèi)存中占不同的單元,不會混淆。
3、可以在一個函數(shù)內(nèi)的復(fù)合語句中定義變量,這些變量只在本復(fù)合語句中有效,這種復(fù)合語句也稱為分程序或程序塊。
4、形式參數(shù)也是局部變量,例如f1函數(shù)中的形參a也只在f1函數(shù)中有效,其他函數(shù)不能調(diào)用。
5、在函數(shù)聲明中出現(xiàn)的參數(shù)名,其作用范圍只在本行的括號內(nèi),實際上,編譯系統(tǒng)對函數(shù)聲明中的變量名是忽略的,即使在調(diào)用函數(shù)時也沒有為它們分配存儲單元。例如:
intmax(inta,intb);//函數(shù)聲明中出現(xiàn)a、b
┆
intmax(intx,inty)//函數(shù)定義,形參是x、y
{
cout<<x<<y<<endl;//合法,x、y在函數(shù)體中有效
cout<<a<<b<<endl;//非法,a、b在函數(shù)體中無效
}
編譯時認為max函數(shù)體中的a和b沒有定義
全局變量和局部變量就整理到這,如果有問題可直接聯(lián)系,希望能夠幫助到你哦!
另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)scvps.cn,海內(nèi)外云服務(wù)器15元起步,三天無理由+7*72小時售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國服務(wù)器、虛擬主機、免備案服務(wù)器”等云主機租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡單易用、服務(wù)可用性高、性價比高”等特點與優(yōu)勢,專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場景需求。
文章標(biāo)題:iOS開發(fā)篇——C++變量介紹-創(chuàng)新互聯(lián)
當(dāng)前網(wǎng)址:http://vcdvsql.cn/article26/dgddcg.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供外貿(mào)網(wǎng)站建設(shè)、電子商務(wù)、網(wǎng)站設(shè)計、小程序開發(fā)、微信公眾號、域名注冊
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內(nèi)容