我正在使用Visual Studio 2010 Ultimate在C ++中编程。我想记录一些函数,我希望文档显示在Intellisense中。
根据MSDN,我只需要在声明之前或之后将评论放在同一行。所以我尝试了这个:
// This is a test.
void foo();
void bar() { foo(); }
将鼠标移到foo()
上时,评论不会显示在工具提示中。我也尝试过:
///
<summary></summary>
标签/doc
构建(通过在项目设置中设置“生成XML文档文件”选项)答案 0 :(得分:15)
现在支持VS 2012!
以前,注释中的XML标记只能由C ++ / CLI读取,而不是普通的旧C ++。 VS 2012现在至少将其中的一部分带入常规C ++ - 它位于What's New in Visual Studio 2012和MSDN文档中:XML Documentation (Visual C++)。
我在2012年终极版中使用我自己的应用程序对其进行了测试,我可以确认摘要,para和seealso标签都是针对工具提示格式化的。
答案 1 :(得分:9)
尝试安装Visual Assist并使用doxygen样式:
/**
* COMMENT DESCRIBING A CLASS
**/
class Foo
{
public:
/**
* \brief A foo method.
*
* More complete description of foo.
*
* \param i A foo parameter.
* \return An int
*
**/
int fooMethod(int i);
private:
int i; /*!< COMENT OF A MEMBER */
};
答案 2 :(得分:7)
我不确定Visual Studio引入了哪个版本,但在VS 2015中,您只需将注释放在function
,method
,class
,{{1}之上},struct
,union
,enum class
甚至个别变量(也是本地人),它将由Intellisense显示。如果要记录来自不同模块的内容,则必须在头文件中编写注释。例子:
答案 3 :(得分:4)
我还没有使用VS2010是多少年来记住这是否有效。但是我在VS的许多不同版本中所做的多年是......:
#pragma region foo(float)
/// <summary> .... </summary>
/// <param name="bar"> .... </param>
/// <returns> .... </returns>
int foo(float bar)
{
// stuff
}
#pragma endregion
换句话说,手动输入Visual Studio将为您自动添加 C#代码的内容。
然后给Intellisense引擎一分钟左右来重新解析文件。当然,进行构建会强制它进行重新分析。
我记得,这适用于最新的VS2010 Express社区,但我不记得它是否适用于VS2010 Ultimate。