如何使用Yaml-Cpp?</char>反序列化vector <char>

时间:2013-11-10 19:43:54

标签: yaml-cpp

我正在使用Yaml-Cpp来生成输入字符串。但是,我似乎以某种方式生成了不正确的向量序列化,因为当我尝试从加载的Yaml节点访问该成员时,我得到“TypedBadConversion”。

除了帮助理解如何生成Yaml之外(我也感兴趣!)有没有人知道为什么有问题的字符串无效?这是一个测试程序及其输出:

测试计划

#include <yaml-cpp/yaml.h>
using namespace YAML;
using namespace std;
int main( int argc, char* argv[] )
{
std::string         Command( "- ./rsc/cudaExample0.sh\n- 10.62.4.214/16\n- 2.0.19.136\n- 5000\n- 5000\n- 0\n-\n  - b\n  - i\n  - n\n  - \" \"\n  - \"-\"\n  - t\n  - \" \"\n- 72" );
YAML::Node          Test = Load( Command );
std::vector<char>   Payload;
    Payload = Test[6].as<std::vector<char> >();
    std::cout << Payload[1] << std::endl;
return 0;
}

输出

Starting /noname/src/testyaml/TestYaml...
terminate called after throwing an instance of 'YAML::TypedBadConversion<char>'
  what():  yaml-cpp: error at line 0, column 0: bad conversion
The program has unexpectedly finished.
/noname/src/testyaml/TestYaml exited with code 0

1 个答案:

答案 0 :(得分:3)

这是yaml-cpp中的错误;我在项目页面上打开了一个issue,并在存储库的尖端修复了它。