全國最多中醫師線上諮詢網站-台灣中醫網
發文 回覆 瀏覽次數:1255
推到 Plurk!
推到 Facebook!

語法問題procedure 裡的procedure

尚未結案
jumo
一般會員


發表:33
回覆:65
積分:24
註冊:2002-04-17

發送簡訊給我
#1 引用回覆 回覆 發表時間:2003-09-23 16:52:05 IP:61.221.xxx.xxx 未訂閱
最近在看別人源碼的時候, 發現有人是這樣寫的 procedure xxxxxxx(......); var ..... procedure yyyyy(......); var ..... begin ..... end; begin ..... end; 為什麼裡面會放一個 procedure?? 這樣處理有什麼好處?? 如果把它拿到外面的話, 跟原來有什麼不一樣呢??
syntax
尊榮會員


發表:26
回覆:1139
積分:1258
註冊:2002-04-23

發送簡訊給我
#2 引用回覆 回覆 發表時間:2003-09-23 18:55:26 IP:203.222.xxx.xxx 未訂閱
看書吧~ 這樣超級新手的問題,在入門的書有教(介紹 procedure 那章節) 如果你的書沒有,那可以丟了
ccchen
版主


發表:61
回覆:940
積分:1394
註冊:2002-04-15

發送簡訊給我
#3 引用回覆 回覆 發表時間:2003-09-24 08:20:04 IP:218.163.xxx.xxx 未訂閱
引言: 最近在看別人源碼的時候, 發現有人是這樣寫的 procedure xxxxxxx(......); var ..... procedure yyyyy(......); var ..... begin ..... end; begin ..... end; 為什麼裡面會放一個 procedure?? 這樣處理有什麼好處?? 如果把它拿到外面的話, 跟原來有什麼不一樣呢??
這主要是可見度(Scope)的問題,其實和變數的宣告沒什麼不同,你可以變數之scope來想. 例如: var globalint:integer; procedure globalprocedure; //implementation之上所有變數,procedure,其他unit均可用 implementation var implint:integer; procedure impprocedure; //implementation之下所有變數,procedure,此unit均可用
procedure xxxx;
//procedure內部之變數,procedure,僅此procedure內可用
var localvalue:integer;
  procedure localprocedure
  begin
     //此處可直接存取xxxx之localValue
  end;
end;
實作此種procedure通常是希望此內部procedure之可見度僅只於此, 且此內部procedure可直接存取原procedure之變數, 不須再以參數方式傳入.
visli
一般會員


發表:5
回覆:1
積分:1
註冊:2003-02-26

發送簡訊給我
#4 引用回覆 回覆 發表時間:2003-09-25 09:46:16 IP:218.17.xxx.xxx 未訂閱
过程中可以嵌套子过程或子函数,函数中也可以嵌套子过程或子函数 这样做的目的只是一个作用范围不同,相当于局部变量与全局变量的区别
系統時間:2024-04-28 0:05:27
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!