2019年11月14日ぶっちゃけこんなとこ読んでないで未確認飛行とか読んでください、これはしがないメモ書きです色々と記事を書いたり作ったりして「なるほど、キミはエンジニアなんだね!」と認識はされているであろう自分ですが、実のところまともなコードは書けないし言語をきちんと勉強した事がまるでないので、最近個人的にアツい重めの言語C#をここらで一度理解すると多言語扱うときも楽になるんじゃないかなと思ったりしたので。(遅い)Golangも好きなのですが継承がなかったりとかちょっと独特な設計なので、みんなだいすきオブジェクト思考な言語のベースとして今回はC#を選びました。2:piyo();break;default:ahokusa();break;}となるわけだが、C#はfalltroughを許可していないらしい。2:piyo();break;みたいなのができない。Goとかだとbreakを書かなくてもデフォルトでbreakしてくれるし、falltroughもできるので、明示的でわかりやすいといえばわかりやすいが、個別に全部break書くのがちょっと怠いし、忘れるともっと怠い。5:piyo();break;とかするらしい。えにゅめらぶる」である。にゅめらぶる」でもない。平気な顔して本家Microsoftのチュートリアルにいきなり出てくるがなんなの一体どういうときに使うの、となるので。このインターフェースを実装するとなんとforeachでコレクション処理ができるようになるらしい。collection){Console.WriteLine(i);}とかやって配列の中身を列挙したりするわけだが、これができるのは配列やリストが内部でIEnumerableインターフェースを実装しているからであって、「配列はforeachできる!」ではなく「foreachはIEnumerableが実装されていれば使える!」である。詳しいことは参考サイト様を見てほしい。エニュメラブル」と読むそうです。このインターフェースを実装することによって実現できる機能は、「foreachでコレクション処理できる」ことです。みたいな感じで...つまるところ、IEnumerableインターフェースはGetEnumeratorメソッドが実装されている必要があり、GetEnumeratorはIEnumeratorインターフェースを実装するクラスのインスタンスを返すことを保証する、ということらしい。なんだかややこしくなってくるが、いきなり出てきたIEnumeratorというのはコレクションの現在の要素を取得したり、次の要素に勧めたり、最初の要素に戻ったりできる奴のことを指す。毎度毎度IEnumeratorを実装するクラスを作るのは面倒なので、イテレータ(yield)というものがある。returnで要素が返される度に、コレクションの次の要素をforeachで処理できるような形で返すことができる。returnをするとIEnumeratorを返すことができるということである。hoge[i];}}}みたいな特殊なGetEnumeratorを実装したりできる。line;}}}が何をしてるかわかりましたね。stringなIEnumerableを返すReadFormとかいうメソッドは「次の要素をよこしな」と言われると、テキストファイルの次の行を返してくれるわけであります。line;}}のusingって何??????どうやら外部リソースを使用するときに使う構文のようです。言うのも、ファイルやデータベース、ネットワークなどの外部リソースを使用する.NETのクラスは、使ったあとにDispose()メソッドを呼び出してリソースを開放しないと、他から利用できなくなったりメモリリークしたりと大変なことになるのです。reader.ReadToEnd();Console.WriteLine(text);}finally{reader.Dispose();}finallyとかいうこれまた謎なもので確実にリソース開放してあげる必要があるのですが、どう考えてもこれを書くのは面倒。reader.ReadToEnd();Console.WriteLine(text);}となります。簡潔だしDispose()を忘れることもなくなるので便利。複数リソース読み込みとか多段usingとかの使い方もあるっぽいので詳しくは以下を。コメントをキャンセルメールアドレスが公開されることはありません。コメントデータの処理方法の詳細はこちらをご覧ください。曰く:コメントありがとうございます。