文章目录
- 问题描述
- 原因
- 解决方案
- 简单的顶级语句试用
- 计算器
- 其他文章
问题描述
用VS2022创建一个控制台应用后,没有名称空间和Main函数了,只有一个WriteLine,如下所示。
// See https://aka.ms/new-console-template for more information
Console.WriteLine("Hello, World!");
原因
首先说明一下原因,在VS2022中,创建控制台应用主要使用的框架是.NET6.0,而这个只有一个WriteLine语句的控制台,就是.NET6.0的新模板,使用了顶级语句这个功能。
只有.Net5.0及其以下版本,才会生成以前带Main和名称空间的模板。
具体关于顶级语句的讲解这篇文章并不涉及,感兴趣的可以去自行学习。
本篇文章主要讲解如何创建以前的模板。
解决方案
创建以前的模板,只需要在创建控制台应用的时候,在选择框架的页面,勾选“不使用顶级语句”即可。
简单的顶级语句试用
顶级语句是指在C#中可以直接在源文件中编写的语句,而不需要包含在任何类或方法内部。它们的引入主要是为了简化小型程序的编写和调试。
在以前的C#版本中,我们必须将代码放在类和方法的结构中,要定义一个可执行的程序,我们需要在一个类中编写一个名为Main的方法,并在其中编写我们的代码。然而,这样的结构对于一些小型程序来说可能过于繁琐,并且增加了程序的复杂性。
从C# 9.0开始,我们可以使用顶级语句来编写更简洁的程序。顶级语句通常位于源文件的最外层,并且我们不需要显式定义类和方法,可以直接编写我们的代码。
顶级语句的使用非常简单。可以在顶级语句中使用using语句引入命名空间,可以定义变量和常量,可以调用方法,可以进行计算等等。编译器会自动将这些顶级语句转换为类和方法的结构,并按照一定的规则组织代码。
需要注意的是,只有一个编译单元可具有顶级语句。这是为了保持代码的可读性和一致性。如果我们想编写更复杂的程序,仍然需要使用类和方法的结构来组织代码。
顶级语句的引入使得编写小型程序更加简洁和直观。不再需要显示定义类和方法,我们可以更直接地表达我们的意图。这对于原型开发、小型脚本和快速测试非常有用。
计算器
接下来讲解一下如何使用顶级语句编写一个简单的计算器程序,使大家更好的习惯顶级语句。计算器让用户输入两个数字并计算它们的和,代码如下所示:
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 输出欢迎消息。接下来,程序提示用户输入两个数字,并使用 int.Parse 将输入的字符串转换为整数值。
然后,程序计算这两个数字的和,并使用字符串插值语法将结果打印出来。
其他文章
C#如何获取当前主机的局域网IP
C#实现局域网之间互相传递消息