1 |
printf("x = %d\n y=%d\n", x, y); |
C言語↑のこれと、C#↓ のこれは同義
1 |
Console.Write("x = {0}\n y= {1}\n", x, y); |
クラスを定義する
クラス……作成したいもの(=オブジェクト)の中身を定義したもの
1 2 3 4 5 6 7 8 9 10 |
class Sum //Sumクラスを定義する { public int ValueA; // メンバ変数 public int ValueB; // メンバ変数 public int ReturnValue() //メソッド(メンバ関数) { return ValueA + ValueB; } } |
インスタンス生成
インスタンス……クラスで定義したものを、実際に使えるようにしたもの。
1 |
Sum sum = new Sum(); |
Sumクラスのsum変数を宣言。
new……メモリを確保し、指定したクラスのインスタンスを生成。
右辺にて、Sumクラスのインスタンスを生成し、左辺の変数sumにインスタンスを代入。
※ただし、変数sumに格納されるのは、インスタンスの参照である。
1 2 3 4 |
sum.ValueA = 10; sum.ValueB = 20; int result = sum.ReturnValue(); Console.WriteLine(result); // 30を出力 |
上記の様に、インスタンスを使用する際は、インスタンスの参照を格納した変数にメンバアクセス演算子「.」を用いて、クラスに定義されているメンバ変数やメソッド(メンバ関数)を使用する。
合わせたプログラム
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 |
class Sum //Sumクラスを定義する { public int ValueA; // メンバ変数 public int ValueB; // メンバ変数 public int ReturnValue() //メソッド(メンバ関数) { return ValueA + ValueB; } } static void Main(string[] args) { Sum sum = new Sum(); // インスタンス生成 sum.ValueA = 10; sum.ValueB = 20; int result = sum.ReturnValue(); Console.WriteLine(result); // 30を出力 } |
コメント