ブロックスコープ
読み:ぶろっく-すこーぷ
外語:block scope
プログラミング言語のスコープにおいて、範囲をブロックとし、その範囲内からしか参照できなくした範囲。ローカルスコープの一つ。
概要
一般に、関数スコープの中に構築されるより小規模なスコープである。
例えばifの{}、forやwhileなどの{}などで、深く意識せずブロックスコープが使われるが、プログラミング言語によってはそういったものが何もないところに突然{}を書くことでその範囲内をブロックスコープにできるものもある。
特徴
プログラミング言語の仕様にもよるが、大抵の場合、ローカル変数はスコープ内でのみ有効である。もし同じ関数スコープの中で、同じ名前を変数を別の場所で別の目的で使うという場合、それぞれをブロックスコープとすることで互いに干渉しない状態にでき、そして処理を完了しそのブロックスコープを抜けたところで変数は自動的に消滅する。
なお、ブロックスコープ内であっても大域変数や関数スコープの変数が定義できる言語もある。こういった言語では変数の使い方にも気を配らないと、想定しないバグが紛れ込むことになる。
再検索