【问题标题】:Number of asterisks starting a C# comment block开始 C# 注释块的星号数
【发布时间】:2015-01-21 17:59:24
【问题描述】:

在 Visual Studio 2010 的 C# 程序中,我有一个以

开头的大型多行注释块

/**

注释块的一部分是这样的一行。 . .

this.afIODisplay = "

在小于符号处,颜色从注释绿色变为灰色,编译器发出警告提示

'xxxxxxxxxxxxxxx' 上的 XML 注释的 XML 格式不正确 -- 'A name was 以无效字符开头。'

(xxxx 的替换专有代码标识符)为什么编译器试图将注释块解释为 XML?

作为一个实验,我尝试用

转义小于符号

&lt

但这并没有解决问题;它只是用新的警告替换了警告

名称以无效字符开头

并消除了向灰色的过渡。然后我用

替换了注释块的起始行

/*

并且问题消失了!!它也没有了,还有一整行的星号。为什么星号的数量在 C# cmets 中很重要?或者这只是 Visual Studio 的一个错误?

【问题讨论】:

    标签: c# visual-studio-2010


    【解决方案1】:

    您的文档注释中的 XML 格式不正确。这会根据规范生成警告。在 C# 5 规范的附录 A 中:

    具有特殊形式的注释可用于指导工具从这些 cmets 和它们之前的源代码元素生成 XML。此类 cmets 是以三个斜杠 (///) 开头的单行 cmets,或以斜杠和两个星号 (/**) 开头的定界 cmets。

    文档 cmets 中的文本必须按照 XML (http://www.w3.org/TR/REC-xml) 规则格式正确。如果 XML 格式不正确,则会生成警告,并且文档文件将包含说明遇到错误的注释。

    【讨论】:

      【解决方案2】:

      c# 中的多行注释以 /* 开头 /** 用于 XML cmets

      【讨论】:

      • XML cmets 使用///
      • 我认为 XML cmets 是 ///
      • @Servy XML 注释可以是单行形式,每行以/// 开头,或多行形式,以/** 开头,以*/ 结尾,并且可以选择在除第一行之外的每一行的开头包含前导 *
      猜你喜欢
      • 2017-07-05
      • 1970-01-01
      • 2021-07-11
      • 2018-09-19
      • 2014-01-28
      • 2022-07-25
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多