在Visual Studio中//和///有什么区别?

时间:2009-02-18 00:58:23

标签: c# visual-studio documentation

当我评论时,Stylecop告诉我使用///代替//。这两者的语义差异是什么?何时应该使用哪一个?

4 个答案:

答案 0 :(得分:18)

//表示您自己的个人评论,其中///表示可以包含特殊数据的评论,例如Visual Studio的解释标记 - 如:

/// <summary>
/// This class does something.
/// </summary>
class Bob {
    ...
}

这将告诉Visual Studio Bob类的摘要,然后它将显示在您的代码完成框中。

答案 1 :(得分:5)

在完成另外的Stylecop规则时自己找到它:

在评论时使用//

在记录XML文档标题时使用///

答案 2 :(得分:1)

三重斜杠为您提供了一个自动生成的模板,其中包含参数和其他功能

/// <summary>
///  Here is your comment
/// </summary>
/// <param name="sender">parameter generated automatically</param>
/// <param name="e">as above</param>
void BindableCollection_CollectionChanged(object sender, NotifyCollectionChangedEventArgs e)

这种方法意味着NDoc等工具可以拖拽您的源代码,自动创建文档文件。双斜线不会削减它......

答案 3 :(得分:1)

没有语义差异,它只是一种编码或评论的风格。 .NET恰好选择它来进行评论。遵循sandcastle等自动代码文档工具的这些规则通常很有帮助。

例如doxygen对C ++代码的注释风格完全不同。所以它主要是为了一致性和标准