問題の説明
VS2022 でコンソール アプリケーションを作成すると、以下に示すように、名前空間と Main 関数は存在せず、WriteLine が 1 つだけ存在します。
// See https://aka.ms/new-console-template for more information
Console.WriteLine("Hello, World!");
理由
まず理由を説明しますと、VS2022 ではコンソールアプリケーションを作成するメインフレームワークは .NET6.0 であり、WriteLine ステートメントが 1 つだけあるこのコンソールは、トップレベルのステートメントを使用する .NET6.0 の新しいテンプレートです。関数。
.Net5.0 以下のバージョンのみが、メインと名前空間を含む以前のテンプレートを生成します。
この記事では、トップレベルのステートメントの具体的な説明は取り上げませんが、興味がある場合は、自分で学習してください。
この記事では主に以前のテンプレートの作成方法について説明します。
解決
以前のテンプレートを作成するには、コンソール アプリケーションの作成時にフレームワークの選択ページで「トップレベルのステートメントを使用しない」にチェックを入れるだけです。
シンプルなトップレベルステートメントのトライアル
C# のトップレベル ステートメントは、クラスやメソッド内に含めることなく、ソース ファイルに直接書き込むことができるステートメントです。これらは主に、小さなプログラムの作成とデバッグを簡素化するために導入されました。
以前の C# バージョンでは、クラスとメソッドの構造にコードを配置する必要があり、実行可能プログラムを定義するには、クラスに Main というメソッドを記述し、その中にコードを記述する必要がありました。ただし、このような構造は一部の小規模なプログラムにとっては煩雑になり、プログラムの複雑さが増大する可能性があります。
C# 9.0 以降では、トップレベルのステートメントを使用して、より簡潔なプログラムを作成できるようになりました。トップレベルのステートメントは通常、ソース ファイルの最も外側のレベルに配置され、クラスやメソッドを明示的に定義する必要がなく、コードを直接記述することができます。
トップレベルのステートメントの使用は非常に簡単です。最上位のステートメントで using ステートメントを使用すると、名前空間の導入、変数と定数の定義、メソッドの呼び出し、計算の実行などを行うことができます。コンパイラは、これらのトップレベルのステートメントをクラスとメソッドの構造に自動的に変換し、特定のルールに従ってコードを編成します。
最上位のステートメントを持つことができるのは 1 つのコンパイル単位のみであることに注意してください。これは、コードを読みやすく一貫性を保つためです。より複雑なプログラムを作成したい場合でも、クラスとメソッドの構造を使用してコードを編成する必要があります。
トップレベルのステートメントの導入により、小さなプログラムをより簡潔かつ直感的に作成できるようになります。クラスやメソッドを明示的に定義する必要がなくなり、より直接的に意図を表現できるようになりました。これは、プロトタイピング、小さなスクリプト、および簡単なテストに役立ちます。
電卓
次に、誰もがトップレベルのステートメントに慣れることができるように、トップレベルのステートメントを使用して簡単な電卓プログラムを作成する方法を説明します。以下に示すように、電卓を使用すると、ユーザーは 2 つの数値を入力し、その合計を計算できます。
Console.WriteLine("没错,是计算器!");
Console.Write("请输入第一个数字:");
#pragma warning disable CS8604 // 引用类型参数可能为 null。
int num1 = int.Parse(Console.ReadLine());
Console.Write("请输入第二个数字:");
int num2 = int.Parse(Console.ReadLine());
#pragma warning restore CS8604 // 引用类型参数可能为 null。
int sum = num1 + num2;
Console.WriteLine($"数字 {
num1} 和 {
num2} 的和为 {
sum}。");
Console.WriteLine("结束!");
上記のコードは、トップレベルで Console.WriteLine を使用してウェルカム メッセージを出力します。次に、プログラムはユーザーに 2 つの数値の入力を求め、int.Parse を使用して入力された文字列を整数値に変換します。
次に、プログラムは 2 つの数値の合計を計算し、文字列補間構文を使用して結果を出力します。