2

参照される変数がグローバルにスコープされていない限り、変数への参照を宣言して使用できないのはなぜですか? 次の現象につながるランタイム メモリまたはオブジェクト構造を説明してください。

スクリプト A が失敗します。

on foo()        
    set l to {0}
    set lref to a reference to l
    return item 1 of lref
end foo

foo()

スクリプト B は成功します。

on run
    set l to {0}
    set lref to a reference to l
    return item 1 of lref
end run

スクリプト C は成功します。

on foo()        
    global l
    set l to {0}
    set lref to a reference to l
    return item 1 of lref
end foo

foo()

参照: AppleScript のハンドラー内でリストを効率的に作成するにはどうすればよいですか? また、このテスト コードで AppleScript がハッシュの firstValue を型参照にできないのはなぜですか?

4

1 に答える 1