C#中XML注释的用途比信号线和多行注释有用。
i.Single line
Eg:
//This is a Single line comment
ii. Multiple line (/* */)
Eg:
/*This is a multiple line comment
We are in line 2
Last line of comment*/
iii. XML Comments (///).
Eg:
/// summary;
/// Set error message for multilingual language.
/// summary
答案 0 :(得分:13)
来自XML Documentation Comments (C# Programming Guide):
使用/ doc选项进行编译时,编译器将搜索 源代码中的所有XML标记,并创建XML文档文件。
Visual Studio for IntelliSense使用的XML注释:
/// <summary>
/// This class performs an important function.
/// </summary>
public class MyClass{}
当您输入代码或将光标悬停在包含xml注释的成员上时,会给您提供很好的提示:
注意:通常,您应该只向公开显示的类型或成员添加xml注释。如果会员是内部会员或私人会员,那么这很好,但不是必需的。有一个很好的工具GhostDoc(可用作Visual Studio的扩展),它可以从类型或成员名称生成XML注释。很高兴检查你是否有良好的命名 - 如果生成的评论不清楚,那么你应该改善成员的名字。
我还建议尽可能少地使用简单(非xml)注释。因为注释是代码重复的一种形式 - 它会复制您在代码中已有的信息。这有两个问题:
好的评论应该描述为什么你编写代码而不是复制代码正在做什么。
答案 1 :(得分:1)
它们也会被许多构建文档文件等的工具所吸引。
答案 2 :(得分:1)
来自MSDN:
使用/ doc选项进行编译时,编译器将搜索 源代码中的所有XML标记并创建XML文档文件。 基于编译器生成的最终文档创建 文件,您可以创建自定义工具或使用Sandcastle等工具。
答案 3 :(得分:1)
XML注释用于构建可由外部工具读取的API文档。 IntelliSense还会读取这些内容,并在您键入时(以及在“文档”窗口中)使用内容在辅助工具提示中显示代码的文档。
编译器(可选)提取所有这些注释,并将它们放在程序集旁边的单个独立XML文件中;这可以解析。
想法就是拥有像JavaDoc这样的东西。不幸的是,微软未能提供这样做的主流成熟工具。
答案 4 :(得分:0)
当您创建Dll assambly时,Xml注释会为dll的用户提供有关函数或其他内容的一些信息
答案 5 :(得分:0)
所有语言的代码通常都允许特殊注释。然后,这些注释可以由创建代码自动文档的过程进行解析。许多图书馆都是这样记录的。
在C#中,这些工具由Microsoft提供,您使用XML注释来声明注释应该由文档过程选取 - 如果您有一个设置。评论也会自动完成。
另请参阅doxygen,JavaDoc以了解其他语言的实现。请参阅相关问题Good alternatives to Sandcastle to generate MSDN-style documentation