2021年11月15日
川俣晶の縁側ソフトウェアnew_C#入門・全キーワード明快解説!total 326 count

Mainメソッド : 全ての始まりのメソッド

Written By: 川俣 晶連絡先

この章のテーマ §

 プログラムの実行が開始された時に最初に実行される機能の書き方を説明します。

前提知識 §

文字列の基礎, Console.WriteLineメソッド, クラス定義, メソッドの基礎

解説 §

 プログラムは多数の文の集合体です。

 それらが順序立てて正しく実行されねばなりません。

 しかし、最初に実行される文だけはプログラムでは指定できません。

 C#では特定の条件を満たすMainという名前のメソッドを最初に実行することになっています。

 有効なMainの一覧は以下の通りです。

  • public static void Main() { }
  • public static int Main() { }
  • public static void Main(string[] args) { }
  • public static int Main(string[] args) { }
  • public static async Task Main() { }
  • public static async Task<int> Main() { }
  • public static async Task Main(string[] args) { }
  • public static async Task<int> Main(string[] args) { }

 (publicは異なるケースがある)

 しかし、簡単なケースではこれは省略できます。

 サンプルソースの場合、単にConsole.WriteLine("Welcom to Main mathod!");と書くだけで同じ結果が得られます。

 Mainメソッドを書くのは、データの受け渡しの都合など、それがどうしても必要な場合に限られます。

罠の数々 §

  • Mainメソッドを2つ以上書くとコンパイラが困ってしまう。それはやめておこう。どうしても2つできてしまうときは、オプションで指定する方法がないわけでもない。
  • Mainメソッドの宣言を省略する記法は割と新しいので、古いサンプルソースではさしたる意味もなくMainメソッドを宣言している場合がある。そのような宣言は省略可能である

参考リンク §

Main() とコマンド ライン引数

サンプルソース: kw_Main §

class SampleClass

{

    static void Main(string[] args)

    {

        Console.WriteLine("Welcom to Main mathod!");

    }

}

実行結果 §

Welcom to Main mathod!

リポジトリ §

https://github.com/autumn009/CSharpPrimer2

練習問題 §

 以下のプログラムの実行結果を予測してみよう。

class SampleClass

{

    static int Main()

    {

        Console.WriteLine("I am Main!");

        return 0;

    }

    static int Main(int x)

    {

        Console.WriteLine("I am Main+x!");

        return 0;

    }

    static int main()

    {

        Console.WriteLine("I am main!");

        return 0;

    }

    static int MAIN()

    {

        Console.WriteLine("I am MAIN!");

        return 0;

    }

}

  1. I am Main!
  2. I am Main+x!
  3. I am main!
  4. I am MAIN!
  5. コンパイルエラー

[[解答]]

Facebook

COOL C# CREW Series

キーワード【 川俣晶の縁側ソフトウェアnew_C#入門・全キーワード明快解説!
【new_C#入門・全キーワード明快解説!】の次のコンテンツ
2021年
11月
16日
do/while: 無限に繰り返さない条件の秘訣
3days 15 count
total 329 count
【new_C#入門・全キーワード明快解説!】の前のコンテンツ
2021年
11月
14日
複文{}: 1つしか文を書けない場所に複数の文を書きたい
3days 3 count
total 266 count

このコンテンツを書いた川俣 晶へメッセージを送る

[メッセージ送信フォームを利用する]

メッセージ送信フォームを利用することで、川俣 晶に対してメッセージを送ることができます。

この機能は、100%確実に川俣 晶へメッセージを伝達するものではなく、また、確実に川俣 晶よりの返事を得られるものではないことにご注意ください。

このコンテンツへトラックバックするためのURL

http://mag.autumn.org/tb.aspx/20211115094210
サイトの表紙【new_C#入門・全キーワード明快解説!】の表紙【new_C#入門・全キーワード明快解説!】のコンテンツ全リスト 【new_C#入門・全キーワード明快解説!】の入手全リスト 【new_C#入門・全キーワード明快解説!】のRSS1.0形式の情報このサイトの全キーワードリスト 印刷用ページ

管理者: 川俣 晶連絡先

Powered by MagSite2 Version 0.36 (Alpha-Test) Copyright (c) 2004-2021 Pie Dey.Co.,Ltd.