当我评论时,Stylecop告诉我使用///代替//。这两者的语义差异是什么?何时应该使用哪一个?
答案 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 ++代码的注释风格完全不同。所以它主要是为了一致性和标准