ジャンキー日記

ちゃらんぽらんな人間の初ブログですw

覚えたことまとめ - (スコープ)

これからは仕事で覚えたことを少しずつ書いていこうと思う。

 

まずは初歩的なところを書いていく。

 

プログラムを初めてから最初に苦戦したのが

スコープ

だった。

 

最初はこれが分からなかったせいで、

サンプルを作るのにも一苦労した。

 

本の通りに書いているのにエラーが出てしまい、

エラーの内容を見ても何を言っているのか全然分からなかった。

 

参考にしていた本もコードの一部が書いてあるだけで、

どこにそれを書けばいいのかが分からなかった。

書きたいこと、やりたいことは分かるのに

それをどこに書けばいいかが分からなくて、

それが原因で徐々に勉強に手がつかなかった。

 

そんなときに「ゴールから始めるC#」という本を見つけて、

この本はどこに書けばいいかがしっかり記載しているので、

この本のおかげで勉強が少し楽しくなった。

 

本題ですが、

スコープをネットで調べると、

見える範囲、使える範囲、依存する範囲等が出てくるが、

範囲毎に使える使えないがあるのは分かったが、

その範囲がどこで分かれているのかが分からなかった。

例1のように変数を定義する前に使用するのができないのは分かるが

例2がダメな理由が分からなかった。

 

例1

----------------------------------------------------------------------------------

1| AAA = "あああ";

2| 

3| string AAA ;

4| 

----------------------------------------------------------------------------------

 

例2

----------------------------------------------------------------------------------

1| if(○○○○) {

2|     string BBB;

3| }

4| 

5| BBB = "あああ"; 

----------------------------------------------------------------------------------

 

今は分かるが、

当時は理由が全然分からなかった。

 

そこで自分が覚えた範囲の覚え方が、

中括弧で括られている部分が範囲、

という風に覚えた。

 

----------------------------------------------------------------------------------

  1|  クラス{

  2|   string AAA;

  3| 

  4|   if(○○○○){

  5|     string BBB;

  6|       if(△△△){

  7|         string CCC;

  8|       }

  9|   }

10| }

 

----------------------------------------------------------------------------------

 

中括弧( { } )内が範囲になるので、

クラスは1~10までが範囲、

if(○○○○)の範囲は4~9、

if(△△△)の範囲は6~8になります。

 

なので、AAAは2~10で使え、

BBBは5~9、

CCCは7~8で使用することができる。

 

これを覚えるのに時間がかかってしまった…

 

次は引数を書こうと思う。

 

終了!!!