C#をつつく10-構造体・モジュール。サブルーチン♪
構造化プログラミングの記事で処理をサブルーチンとして纏める事の大事さを一緒に考えたよね? そのサブルーチンを実現するための機能がこの構造体なんだ。実はC#の実行環境であるCLIではまた違う意味を持っているんだけど、その事についてはクラスを知らないと分からない話しなんで日を改めてつつくよ。
このシリーズの前回である 列挙体の記事では値に名前をつける方法をつっついたけど、構造体とは値だけではなくて関数(メソッド)とか変数(フィールド)を纏めるためのものなんだ。あっそうそう、構造体が持つ変数はフィールドと呼ぶピヨ。
じゃあさっそくサンプルコードを見てみよう。
using System;
public struct Bird
{
//フィールド
public string Name;
public int Age;
//メソッド
public void Talk( ) {
Console.WriteLine( "ワタシハ{0}。年は{1}だよ。", this.Name, this.Age);
}
}
class Program
{
static void Main( string[ ] args ) {
Bird b = new Bird( );
b.Name = "インドリ";
b.Age = 29;
b.Talk( );
}
}
このサンプルコードをじっくり見れば分かるけど、構造体はフィールドとメソッドを持てるんだ。えっ?何故変数をフィールドと呼んだり、関数をメソッドって呼ぶかって?うーんそれは、言語設計者の趣味じゃないかな?多分、C#を作った人はこう呼べば分かりやすいと思ったんだろうね。 短いけど構造体について今言えることはこれだけピヨ。
次回へ続く・・・