仅使用来自 boost 库的 属性 树
Use only property tree from boost libraries
我需要使用 boost 库中的 属性 树来解析大型 XML 文件。如何只使用它们而不是包含整个 boost 库?
您完全没有必要包含整个 boost 库。例如,如果您查看 appropriate boost documentation page for XML Property Trees 中的快速教程,您会发现只需包含以下内容:
#include <boost/property_tree/ptree.hpp>
#include <boost/property_tree/xml_parser.hpp>
为了获得功能齐全的教程代码编译无错。
所以,这回答了你的问题:
How to use them ONLY instead of including the whole boost libraries?
但是,如果你的意思是 必须 package/deploy 整个 boost 库 与 包括整个 boost 库 ,然后你有 the bcp tool, itself a part of boost (also mentioned this post) 来帮助你筛选整个考验并确切知道使用 property_tree 库需要库的哪些部分。
我有 运行 这个给你:
bcp --list property_tree
而且结果很好...很长一段时间来输入这个答案。与此一样,property_tree 库本身依赖于整个 boost 库中的很大一部分。
因此,将整个 boost 打包为项目的一部分与仅运送 property_tree 构建所需的内容之间不会有如此明显的区别。
底线:如果您只需要 XML 解析功能,而所有的提升对您来说都太大了,那么我建议您查看众多 XML 库中的一个 such as TinyXML-2 -- 这是一个 "simple, small, efficient, C++ XML parser that can be easily integrated into other programs."
直接的问题是:它是 header-only,所以没有任何实际意义。
更重要的是:
I need to parse a large XML file using property tree
您需要选择一个:
- 我需要解析一个大的 XML 文件
- 我需要 [...] 使用 [red.] 属性 tree
Boost 属性 Tree 不是 XML 库。如果你需要解析通用 XML,你不能使用 Boost 属性 树,否则你很快就会后悔这个选择。参见 What XML parser should I use in C++?`
我需要使用 boost 库中的 属性 树来解析大型 XML 文件。如何只使用它们而不是包含整个 boost 库?
您完全没有必要包含整个 boost 库。例如,如果您查看 appropriate boost documentation page for XML Property Trees 中的快速教程,您会发现只需包含以下内容:
#include <boost/property_tree/ptree.hpp>
#include <boost/property_tree/xml_parser.hpp>
为了获得功能齐全的教程代码编译无错。
所以,这回答了你的问题:
How to use them ONLY instead of including the whole boost libraries?
但是,如果你的意思是 必须 package/deploy 整个 boost 库 与 包括整个 boost 库 ,然后你有 the bcp tool, itself a part of boost (also mentioned this post) 来帮助你筛选整个考验并确切知道使用 property_tree 库需要库的哪些部分。
我有 运行 这个给你:
bcp --list property_tree
而且结果很好...很长一段时间来输入这个答案。与此一样,property_tree 库本身依赖于整个 boost 库中的很大一部分。
因此,将整个 boost 打包为项目的一部分与仅运送 property_tree 构建所需的内容之间不会有如此明显的区别。
底线:如果您只需要 XML 解析功能,而所有的提升对您来说都太大了,那么我建议您查看众多 XML 库中的一个 such as TinyXML-2 -- 这是一个 "simple, small, efficient, C++ XML parser that can be easily integrated into other programs."
直接的问题是:它是 header-only,所以没有任何实际意义。
更重要的是:
I need to parse a large XML file using property tree
您需要选择一个:
- 我需要解析一个大的 XML 文件
- 我需要 [...] 使用 [red.] 属性 tree
Boost 属性 Tree 不是 XML 库。如果你需要解析通用 XML,你不能使用 Boost 属性 树,否则你很快就会后悔这个选择。参见 What XML parser should I use in C++?`