如何在Xcode 9.3中显示C ++代码文档?

时间:2018-05-04 12:51:06

标签: c++ xcode c++11 xcode9 code-documentation

我在Xcode中开发基于C ++的软件,并希望(至少)具有相同的代码文档方便性,就好像我正在为Swift或objc开发一样。

示例:

std::string myString("hello");
if (myString.empty()) {
    // do something
}

如果我想知道.empty()到底做了什么,我想选择 - 点击该功能并获取文档覆盖图,其中包含以下信息: http://en.cppreference.com/w/cpp/string/basic_string/empty,与objc和Swift完全一样。

这怎么可能?

当前输出看起来像这样: enter image description here

3 个答案:

答案 0 :(得分:10)

你做不到。根据{{​​3}},从Xcode 8.3开始

  

第三方docset支持现已弃用,将不再使用   在Xcode的未来版本中受支持。 (30584489)

还有其他文档浏览器,例如Apple's Xcode release notes,可让您安装自己的文档。但这并没有给你你所希望的东西。

我已经确认在~/Library/Developer/Shared/Documentation中添加C ++。docset不起作用。 (可能是早期Xcode遗留的目录)实际上,完全删除此目录不会影响Xcode 9.x正确显示默认文档。

答案 1 :(得分:5)

这适用于您的自定义类。您可以像这样添加您的评论 - 在标题中我这样做

 /**
     * Method name: name
     * Description: returns name
     * Parameters: none
     */

这是我做的一个例子 -

#ifndef test_hpp
#define test_hpp

#include <iostream>
#include <string>

class myclass{
private:
    std::string name_;

public:

    myclass(std::string);
    /**
     * Method name: name
     * Description: returns name
     * Parameters: none
     */
    std::string name();
};

#endif /* test_hpp */

enter image description here

答案 2 :(得分:4)

我会赞成Deb的回答,但我也在考虑这一段时间。

Markdown in Xcode在Xcode 9中有些脆弱。

它适用于函数声明: Multiline comment

Singleline comment

还有标注: Callouts

文档注释似乎适用于函数声明,但对函数内的代码行完全不起作用。