提取狮身人面像文档中的C++代码片段

Extracting a C++ code snippet in a sphinx document

本文关键字:C++ 代码 片段 文档 提取      更新时间:2023-10-16

我正在尝试从我的源代码中提取特定的代码片段(测试(以将其输出到文档中。

TEST_CASE("std::vector") {
//! [MyTest]
std::vector<int> v = {42,43};
CHECK( v.size() == 2 );
//! [MyTest]
}

在 doxygen 中,我可以通过snippet命令引用它。

现在,我想将代码片段中的代码直接显示在狮身人面像文档中

You can create a std::vector just like this:
INSERT THE CODE BETWEEN [MyTest] MARKERS HERE
The std::vector class automatically allocates memory for you

我该怎么做?我在呼吸中没有找到任何doxygensnippet指令。

注意:我不介意狮身人面像直接使用任何类型的标签为我提取代码,我不需要符合doxygen标准。

多亏了@Steve_Piercy我才能找到我想要的东西:将literalinclude指令与start-afterend-before一起使用。

TEST_CASE("std::vector") {
//! [MyTest begin]
std::vector<int> v = {42,43};
CHECK( v.size() == 2 );
//! [MyTest end]
}

文档文件:

You can create a std::vector just like this:
.. literalinclude::  my_test_file.cpp
:start-after: MyTest begin
:end-before: MyTest end
The std::vector class automatically allocates memory for you