2013-03-20から1日間の記事一覧

デバッグ時のみ出力したり関数実行したりする

C#

前回の記事でConditional属性について学んだので早速デバッグ用の関数を作ってみました。 -- lib/debug.cs -- using System; using System.Diagnostics; namespace MyLib { public static class debug { // デバッグ改行出力関数 [Conditional("DEBUG")] pub…

Conditional属性

C#

属性 - C# によるプログラミング入門 | ++C++; // 未確認飛行 C 属性というものが出てきました。クラスやメソッド等に追加情報を与えることができる機能とのことです。「百聞は一実装にしかず」という諺もある通り、手を動かしてみましょう。色々な属性があ…

リフレクションを利用して文字列からクラス操作

C#

実行時型情報 - C# によるプログラミング入門 | ++C++; // 未確認飛行 C リフレクションとはプログラム実行時にクラス等のメタデータを取り出したりなんかしたりできる機能みたいです。これだけだとなんのこっちゃわからないのですが、要するに文字列からイ…

インデクサー

C#

インデクサー - C# によるプログラミング入門 | ++C++; // 未確認飛行 C 配列の[]をオーバーロードできる機能です。定義の仕方はプロパティと似ています。 using System; class Class { public int[] data = new int[10]; public int this[int i] { set { da…

演算子のオーバーロード

C#

演算子のオーバーロード - C# によるプログラミング入門 | ++C++; // 未確認飛行 C C++と同様にC#にも演算子のオーバーロードがあります。定義の仕方もまぁほぼ同じですね。 using System; class Class { public int i; public Class (int i) { this.i = i; …

オブジェクト初期化子はやっぱ便利

C#

以前、オブジェクト初期化子について勉強しましたが、その時は何が便利なのかいまいちわかりませんでした。しかしいくつかのプログラムを書いてる内に、なるほどこれは便利だと思うようになりました。 using System; class Class { public string Name; } cl…