拜托~此處的str0為全局變量,而str1確切的講到底是全局的還是局部的變量呢? |
答題得分者是:ac910127
|
bodelphi
一般會員 發表:5 回覆:4 積分:1 註冊:2008-09-29 發送簡訊給我 |
unit unit2;
interface //声明全局变量,由unit1.pas来引用 var str0:ansistring; implementation var str1:ansistring='這是一個全局變量還是一個局部變量'; begin end. //------------------------------------------------------------------------------------- {請問這里的str1是一個全局變量嗎?如果是全局變量,為什么在其它單元,例如unit1.pas引用時會出現變量未定義,而在引用str0這個全局變量時沒有出錯?;如果不是一個全局變量,那為什么str1可以在定義時賦予初始值?不是說局部變量不能被初始化嗎?,請大家解答一下,十分感謝!} |
ac910127
一般會員 發表:7 回覆:27 積分:11 註冊:2009-11-06 發送簡訊給我 |
您好
根據您的宣告,str0,str1均為全局變量, 可是在"可見度"上有一些差別。 str0(implementation上面) : 只要有引用Unit2的單元(包含本身)均可使用此變量 str1(implementation下面) : 可見度只限於Unit2任何地方均可以使用他。 以上為小弟小小的見解,若有錯誤,煩請前輩更正指導。 ===================引 用 bodelphi 文 章=================== unit unit2; interface //声明全局变量,由unit1.pas来引用 var str0:ansistring; implementation var str1:ansistring='這是一個全局變量還是一個局部變量'; begin end. //------------------------------------------------------------------------------------- {請問這里的str1是一個全局變量嗎?如果是全局變量,為什么在其它單元,例如unit1.pas引用時會出現變量未定義,而在引用str0這個全局變量時沒有出錯?;如果不是一個全局變量,那為什么str1可以在定義時賦予初始值?不是說局部變量不能被初始化嗎?,請大家解答一下,十分感謝!}
編輯記錄
ac910127 重新編輯於 2010-11-16 18:45:15, 註解 無‧
|
bodelphi
一般會員 發表:5 回覆:4 積分:1 註冊:2008-09-29 發送簡訊給我 |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |