我正在运行找到here的示例,尝试在C ++中使用YAML。我将代码逐字复制到新项目文件夹中的test.cpp中。我将YAML编译成静态库并将其链接到我的项目。我正在运行Ubuntu 11.10。我使用以下命令编译:
g++ -Wall -I. -g test.cpp -lyaml-cpp -L.
我收到以下错误声明:
terminate called after throwing an instance of 'YAML::ParserException'
what(): yaml-cpp: error at line 4, column 2: illegal block entry
Aborted
这个例外是什么意思?什么可能是错的?我无法找到每个例外含义的明确文档,因此即使链接到这些信息也会有所帮助。我可能超出了我的深度,因为我是YAML的新手,使用库和linux就此而言。在此先感谢您的帮助。
编辑:错误发生在“parser.GetNextDocument(doc)”之前。此外,我从存储单个标量的网站上运行了一个更简单的示例,并且运行正常。是关于我的输入文件或我的代码的例外吗?
答案 0 :(得分:1)
错误表示输入文件(monsters.yaml
)存在问题。确保您将完全复制。它声称在第4行第2列有一个错误,所以你可以先查看那个点(但yaml-cpp对于错误位置不是很好,因此可能不适合查看)。
确定的事项: