如何编写在Intellisense中显示的C ++注释?
我正在使用Visual Studio 2010 Ultimate进行C ++编程。 我想logging一些function,我希望文档显示在Intellisense中。
根据MSDN的说法,我只需要在声明之前或者在同一行之后添加注释。 所以我试过这个:
// This is a test. void foo(); void bar() { foo(); }
将鼠标移到foo()
,注释不会出现在工具提示中。 我也试过:
-
///
-
<summary></summary>
标记 - 用
/doc
构build(通过在项目设置中设置“生成XML文档文件”选项)
到目前为止,我还没有运气。 有没有人知道一个方法来使这项工作?
现在在VS 2012支持!
以前,注释中的XML标签只能通过C ++ / CLI读入,而不是普通的旧C ++。 现在,VS 2012至less将这些内容中的一部分带入了常规的C ++ – 它在Visual Studio 2012的新增function和MSDN文档中: XML文档(Visual C ++) 。
我已经在2012年用我自己的应用程序进行了testing,我可以确认摘要,段落和seealso标签都被提取出格式化的工具提示。
尝试安装Visual Assist并使用doxigen样式:
/** * COMENT OF 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 */ };
我不确定哪个版本的Visual Studio引入了,但在VS 2015中,您可以简单地将注释放在function
, method
, class
, struct
, union
, enum class
, namespace
甚至单个variables(本地也)上方通过Intellisense。 如果你想从一个不同的模块文件,你必须在头文件中写一个评论。 例子:
我没有使用VS2010太多年来记住这是否在那里工作。 但是我在VS的许多不同版本中做了多年的工作是:
#pragma region foo(float) /// <summary> .... </summary> /// <param name="bar"> .... </param> /// <returns> .... </returns> int foo(float bar) { // stuff } #pragma endregion
换句话说,手动将Visual Studio自动为您inputC#代码 。
然后给Intellisense引擎一分钟左右来重新分析文件。 当然,做一个构build会迫使它重新分解。
据我所知,这在最新的VS2010 Express社区中可以使用,但是我不记得它是否在VS2010 Ultimate中工作。