Open3

(学習記録)雰囲気で書いてるC#へ再入門する

m0n0rem0n0re

C#プログラムの構成

using System;

namespace HelloWorld
{
    class Program
    {
        static void Main(string[] args)
        {
		Console.WriteLine("HelloWorld!");
        }
    }
}

どっかのチュートリアル通りにコマンドを叩くとこんな感じのプログラムが自動生成された。
もうわかってることもあるけど、ひとつずつ見ていくぞ。

m0n0rem0n0re

名前空間の参照(using)

using System;

よその名前空間(namespace)にあるクラスを参照するための記述。
おまじないと呼ばれることが多い。
ここでは「System」という明らかに大事そうなものが参照されている。

「System」の中身は…リファレンスを見…ゔぉえ!めっちゃある…なにこれ。

一般的に使用される値型と参照データ型、イベントとイベント ハンドラー、インターフェイス、属性、および処理例外を定義する基底クラスが含まれています。

なるほどな^

C#9.0からは↓のように書けるらしい。(トップレベルステートメント #TODO:後で調べる)
タッカーさん…namespaceとclass名…どこいった?

using System;

Console.WriteLine("HelloWorld");

C#10.0では更に↓のように書けるらしい。(global using #TODO:後で調べる)
タッカーさん!?

Console.WriteLine("HelloWorld");
m0n0rem0n0re

class

オブジェクトの設計図のこと。
このオブジェクトを実体化(操作できる状態)することをインスタンス化という。

// Class "Point"を定義する。
class Point { public int X; public int Y; }

// Pointをインスタンス化する
Point p  = new Point();