# C# 注释

> 原文： [https://www.programiz.com/csharp-programming/comments](https://www.programiz.com/csharp-programming/comments)

#### 在本文中，我们将学习 C# 注释，不同样式的注释，以及为什么以及如何在程序中使用它们。

注释在程序中使用，以帮助我们理解一段代码。 它们是人类可读的单词，旨在使代码可读。 注释被编译器完全忽略。

在 C# 中，有 3 种类型的注释：

1.  单行注释（`//`）
2.  多行注释（`/* */`）
3.  XML 注释（`///`）

* * *

## 单行注释

单行注释以双斜杠`//`开头。 编译器将忽略`//`之后到行尾的所有内容。 例如，

```cs
int a = 5 + 7; // Adding 5 and 7
```

在这里，`Adding 5 and 7`是注释。

### 示例 1：使用单行注释

```cs
// Hello World Program
using System;

namespace HelloWorld
{
	class Program
	{
		public static void Main(string[] args)  // Execution Starts from Main method
		{
			// Prints Hello World
			Console.WriteLine("Hello World!");
		}
	}
} 
```

上面的程序包含 3 条单行注释：

```cs
// Hello World Program
// Execution Starts from Main method
```

和

```cs
// Prints Hello World
```

单行注释可以写在单独的行中，也可以与代码一起写在同一行中。 但是，建议在单独的行中使用注释。

* * *

## 多行注释

多行注释以`/*`开头，以`*/`结束。 多行注释可以跨越多行。

### 示例 2：使用多行注释

```cs
/*
	This is a Hello World Program in C#.
	This program prints Hello World.
*/
using System;

namespace HelloWorld
{
	class Program
	{
		public static void Main(string[] args)
		{
			/* Prints Hello World     */
			Console.WriteLine("Hello World!");
		}
	}
} 
```

上面的程序包含 2 条多行注释：

```cs
/*
This is a Hello World Program in C#.
This program prints Hello World.
*/
```

and

```cs
/* Prints Hello World */
```

在这里，我们可能已经注意到，多行注释不必跨越多行。 可以使用`/* … */`代替单行注释。

* * *

## XML 文档注释

XML 文档注释是 C# 中的一项特殊功能。 它以三斜杠`///`开头，用于分类描述一段代码。这是使用注释中的 XML 标记完成的。 这些注释然后用于创建单独的 XML 文档文件。

如果您不熟悉 XML，请参阅[什么是 XML？](https://www.w3schools.com/xml/xml_whatis.asp "What is XML?")

### 示例 3：使用 XML 文档注释

```cs
/// <summary>
///  This is a hello world program.
/// </summary>

using System;

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

上面程序中使用的 XML 注释是

```cs
/// <summary>
/// This is a hello world program.
/// </summary>
```

生成的 XML 文档（`.xml`文件）将包含：

```cs
<?xml version="1.0"?>
<doc>
	<assembly>
		<name>HelloWorld</name>
	</assembly>
	<members>
	</members>
</doc>
```

如果您想了解更多信息，请访问 [XML 文档注释](https://docs.microsoft.com/en-us/dotnet/csharp/programming-guide/xmldoc/xml-documentation-comments)。

* * *

## 以正确的方式使用注释

注释用于解释部分代码，但不应过度使用它们。

例如：

```cs
// Prints Hello World
Console.WriteLine("Hello World");
```

上面的示例中不必使用注释。 很明显，该行将打印 HelloWorld。 在这种情况下，应避免编写注释。

*   而是应在程序中使用注释来解释复杂的算法和技术。
*   注释应简短，切题而不是冗长的描述。
*   根据经验，最好使用注释解释**为什么**而不是**做什么**。