スコープ

識別子の参照可能範囲

スコープとは識別子を参照可能なソースコードの範囲である。

スコープが他のスコープを囲む場合、内側のスコープから外側のスコープにある識別子を見ることができるが、外側のスコープから内側のスコープにある識別子を見ることはできない。

例えば、


class sample

bool _flag;

open method void sample_method()

bool method_flag = _flag; // ♦1

if(true)

bool if_flag = method_flag; // ♦2

endif

bool method_flag2 = if_flag; // ♦3

endmethod

endclass


♦1 : 参照可能。_flagはクラス定義スコープで宣言。内側、メソッド定義スコープから見える。

♦2 : 参照可能。method_flagはメソッド定義スコープで宣言。内側、if文スコープから見える。

♦3 : エラー。if_flagはif文スコープで宣言。外側から内側は見えない。

Copyright © Rice All rights reserved.