阿摩線上測驗 登入

申論題資訊

試卷:107年 - 107 司法特種考試_三等_檢察事務官電子資訊組:程式語言#74283
科目:程式語言
年份:107年
排序:0

申論題內容

三、請敘述在程式語言中,靜態領域(static scoping)和動態領域(dynamic scoping) 有何不同?請舉例並說明其優缺點各為何。(25 分)

詳解 (共 1 筆)

詳解 提供者:hchungw
靜態領域(Static Scoping)和動態領域(Dynamic Scoping)
在程式語言中,變量的作用域決定了變量的可見性和生命週期。靜態領域(Static Scoping)和動態領域(Dynamic Scoping)是兩種不同的變量作用域管理方法,它們在變量解析和作用域決定上有根本的不同。
靜態領域(Static Scoping)
靜態領域(又稱詞法領域,Lexical Scoping)在編譯時期確定變量的作用域。這種作用域基於程式碼的結構,特別是程式碼的塊結構。
特點:
作用域在編譯時期確定:變量的作用域在編譯時期決定,與程式碼的物理結構(如函數和塊)有關。
可預測性強:因為作用域在編譯時已經確定,所以程式行為是可預測的。