覚えたことまとめ - (スコープ)
これからは仕事で覚えたことを少しずつ書いていこうと思う。
まずは初歩的なところを書いていく。
プログラムを初めてから最初に苦戦したのが
スコープ
だった。
最初はこれが分からなかったせいで、
サンプルを作るのにも一苦労した。
本の通りに書いているのにエラーが出てしまい、
エラーの内容を見ても何を言っているのか全然分からなかった。
参考にしていた本もコードの一部が書いてあるだけで、
どこにそれを書けばいいのかが分からなかった。
書きたいこと、やりたいことは分かるのに
それをどこに書けばいいかが分からなくて、
それが原因で徐々に勉強に手がつかなかった。
そんなときに「ゴールから始める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で使用することができる。
これを覚えるのに時間がかかってしまった…
次は引数を書こうと思う。
終了!!!