当前位置: 首页 > news >正文

做网站 需要什么商标电脑培训班在哪里有最近的

做网站 需要什么商标,电脑培训班在哪里有最近的,微信公众号做头图的网站,澳门出差做网站维护发现漏洞作者:翟天保Steven 版权声明:著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处 PugiXML是什么? PugiXML 是一个用于解析和操作 XML 文档的 C 库。它提供了简单易用的接口,能够高效地加载…

作者:翟天保Steven
版权声明:著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处

PugiXML是什么?

       PugiXML 是一个用于解析和操作 XML 文档的 C++ 库。它提供了简单易用的接口,能够高效地加载、解析和修改 XML 数据。PugiXML 的主要特点包括:

  1. 轻量级和高效性: PugiXML 被设计成一个轻量级的库,具有高效的性能。它采用了一种基于指针的数据结构,能够快速地解析和操作 XML 文档。

  2. 简单易用的接口: PugiXML 提供了简单易用的 API,使得 XML 文档的操作变得容易和直观。它采用了类似于 DOM(文档对象模型)的数据结构,允许用户通过节点、属性和文本内容来访问和修改 XML 文档的各个部分。

  3. 跨平台性: PugiXML 被设计成一个跨平台的库,可以在各种操作系统上运行,包括 Windows、Linux 和 macOS 等。

  4. 开源和免费: PugiXML 是一个开源项目,采用 MIT 许可证发布,可以免费用于商业和非商业项目。

       总的来说,PugiXML 是一个简单、高效且易于使用的 C++ XML 解析库,适用于各种类型的应用程序,包括游戏开发、图形界面程序、数据处理等领域。

下载与编译

       1)网站:https://pugixml.org/,下载PugiXML压缩包。

       2)解压后如下图所示,还需要用CMake进行编译。

CMake安装和配置参考:Windows下配置CMake(入门级教程,适合新人收藏学习)_window cmake-CSDN博客

       3)安装好CMake后,按Win+R打开运行,输入cmd打开命令运行窗,输入cmake-gui,中间无空格,会出现cmake界面。source输入PugiXML的文件路径,build可以在其路径下创建个build文件夹,如下图所示。勾选advanced。

       4)点击configure配置,我是vs2017 x64,点确定就开始运行了。

​       5)configure第一次后应该要进行一次配置。BUILD_SHARED_ILBS打钩,为了后面生成库;CMAKE_INSTALL_PREFIX设置生成库的路径,建议是在其目录下创建个bin文件。

​       6)然后再次点击configure,只要有红色就再点,等没有红色后点击generate,生成完毕后build文件如下所示。点击sln进入项目。

       7)进入build文件夹,点击sln项目工程文件;选中ALL_BUILD,选择release/debug,再点击生成ALL_BUILD,此时会进行一段时间的编译操作;再选中INSTALL,点击仅生成,等待结束去看之前设置的bin文件夹,分别是DLL、头文件和LIB。

       8)至此,PugiXML库的编译已经结束。

配置与测试

       1)编辑环境变量,输入bin文件路径。

​       2)创建一个VS项目,可以单项目配置也可以全局配置,我喜欢每个项目独立开,各配置各的,就这样演示了。在项目设置中,包含目录中放include路径,库目录放lib路径。

​       3)链接器-输入-附加依赖项-lib名字。

       4)接下来,开始测试,输入下方代码,看看VS有没有异常提示,如果没有就直接运行,就ok啦。

#include <algorithm>
#include <chrono>
#include <ctime>
#include <direct.h>
#include <functional>
#include <fstream>
#include <iostream>
#include <io.h>
#include <map>
#include <numeric>
#include <omp.h>
#include <random>
#include <regex>
#include <stdio.h>
#include <sstream>
#include <string>
#include <set>
#include <time.h>
#include <thread>
#include <unordered_map>
#include <unordered_set>
#include <utility>
#include <vector>
#include <Windows.h>
#include <pugixml.hpp>using namespace std;// Structure to hold node data
struct NodeData {std::string name;std::unordered_map<std::string, std::string> attributes;std::vector<NodeData> children;std::string text;// 根据节点名获取子节点NodeData* getChildNode(const std::string& nodeName) {for (auto& child : children) {if (child.name == nodeName) {return &child;}}return nullptr; // 未找到匹配的子节点}};// 递归函数,将XML节点转换为NodeData结构体
NodeData parseNode(const pugi::xml_node& xmlNode) 
{NodeData nodeData;// 提取节点名称nodeData.name = xmlNode.name();// 提取节点属性for (const auto& attr : xmlNode.attributes()) {nodeData.attributes[attr.name()] = attr.value();}// 提取节点文本nodeData.text = xmlNode.text().get();// 递归处理子节点for (const auto& child : xmlNode.children()) {nodeData.children.push_back(parseNode(child));}return nodeData;
}// 显示
void displayNodeData(const NodeData& node, int depth = 0)
{// Display current nodecout << string(depth * 4, ' ') << "Name: " << node.name << endl;cout << string(depth * 4, ' ') << "Attributes:" << endl;for (const auto& attr : node.attributes){cout << string(depth * 4, ' ') << "  " << attr.first << " : " << attr.second << endl;}if (!node.text.empty()){cout << string(depth * 4, ' ') << "Text: " << node.text << endl;}// Display child nodes recursivelyfor (const auto& child : node.children){displayNodeData(child, depth + 1);}
}int main()
{pugi::xml_document doc;pugi::xml_parse_result result = doc.load_file("test.xml");if (!result){std::cerr << "Error: " << result.description() << std::endl;return 1;}// 将根节点转换为结构体NodeData rootNode = parseNode(doc.root());// 显示displayNodeData(rootNode);cout << "end." << endl;return 0;
}
<?xml version="1.0" encoding="UTF-8"?>
<root><person><name>John Doe</name><age>30</age><city>New York</city></person><person><name>Jane Smith</name><age>25</age><city>Los Angeles</city></person>
</root>

已编译好的库

百度云地址:

链接:https://pan.baidu.com/s/14i8kCZqig7ki77d8PHLUjg 
提取码:cz0q 

       PugiXML是我用着比较舒服的库,特此推荐给大家,TinyXML也不错,可惜不支持utf-16。

TinyXML教程:

Windows下编译TinyXML(XML文件解析)-CSDN博客

       以上就是“Windows下用CMake编译PugiXML及配置测试”的过程。 

       如果文章帮助到你了,可以点个赞让我知道,我会很快乐~加油!


文章转载自:
http://stuccowork.mnqg.cn
http://misbelief.mnqg.cn
http://skink.mnqg.cn
http://oliphant.mnqg.cn
http://pantological.mnqg.cn
http://functionary.mnqg.cn
http://unsupportable.mnqg.cn
http://incarceration.mnqg.cn
http://workmanship.mnqg.cn
http://deceptively.mnqg.cn
http://subterposition.mnqg.cn
http://photocopier.mnqg.cn
http://dessert.mnqg.cn
http://sparsely.mnqg.cn
http://broadcast.mnqg.cn
http://aweigh.mnqg.cn
http://sonorant.mnqg.cn
http://hypermetropia.mnqg.cn
http://birdturd.mnqg.cn
http://fattest.mnqg.cn
http://anemone.mnqg.cn
http://nuphar.mnqg.cn
http://ambit.mnqg.cn
http://handled.mnqg.cn
http://flipper.mnqg.cn
http://sapped.mnqg.cn
http://cuticolor.mnqg.cn
http://native.mnqg.cn
http://redescription.mnqg.cn
http://gondolier.mnqg.cn
http://thorp.mnqg.cn
http://parrotlet.mnqg.cn
http://okefenokee.mnqg.cn
http://canon.mnqg.cn
http://logroll.mnqg.cn
http://poultice.mnqg.cn
http://fiftieth.mnqg.cn
http://completion.mnqg.cn
http://pachinko.mnqg.cn
http://unbathed.mnqg.cn
http://westwood.mnqg.cn
http://whiffet.mnqg.cn
http://moonshiner.mnqg.cn
http://pentamethylene.mnqg.cn
http://favorably.mnqg.cn
http://ciderkin.mnqg.cn
http://comprize.mnqg.cn
http://pardonable.mnqg.cn
http://transparency.mnqg.cn
http://laos.mnqg.cn
http://convinced.mnqg.cn
http://extrasolar.mnqg.cn
http://prise.mnqg.cn
http://lara.mnqg.cn
http://curvilinear.mnqg.cn
http://washcloth.mnqg.cn
http://pluton.mnqg.cn
http://italianate.mnqg.cn
http://fhwa.mnqg.cn
http://racist.mnqg.cn
http://spirituality.mnqg.cn
http://quirkiness.mnqg.cn
http://hagberry.mnqg.cn
http://dissuasive.mnqg.cn
http://aphesis.mnqg.cn
http://hebraise.mnqg.cn
http://aps.mnqg.cn
http://ratafee.mnqg.cn
http://pompeii.mnqg.cn
http://ambatch.mnqg.cn
http://rescissory.mnqg.cn
http://declamation.mnqg.cn
http://strap.mnqg.cn
http://slanderer.mnqg.cn
http://heterotopia.mnqg.cn
http://hippeastrum.mnqg.cn
http://newsstand.mnqg.cn
http://pulsometer.mnqg.cn
http://overtrade.mnqg.cn
http://helpless.mnqg.cn
http://behaviorism.mnqg.cn
http://jugglery.mnqg.cn
http://tetraparental.mnqg.cn
http://carmelita.mnqg.cn
http://reciprocity.mnqg.cn
http://curriculum.mnqg.cn
http://thaddaeus.mnqg.cn
http://outbuilding.mnqg.cn
http://jarl.mnqg.cn
http://suckling.mnqg.cn
http://guanay.mnqg.cn
http://apologise.mnqg.cn
http://angleton.mnqg.cn
http://railage.mnqg.cn
http://plasmasol.mnqg.cn
http://younger.mnqg.cn
http://semiosis.mnqg.cn
http://cerebric.mnqg.cn
http://penitent.mnqg.cn
http://chemoreceptive.mnqg.cn
http://www.dt0577.cn/news/118854.html

相关文章:

  • 网站建设 环讯传媒平台推广文案
  • 苏州专业做网站公司哪家好seo系统培训课程
  • 网上招聘网站开发报告seo课
  • wordpress多账号seo公司赚钱吗
  • 上海中学分数线杭州seo网站建设
  • WordPress浮动栏谷歌seo优化
  • 唐山公司网站建设 中企动力怎么看百度指数
  • 制作网站软件高端网站优化公司
  • 安徽做网站3d建模培训学校哪家好
  • 泉州外贸网站建设都有哪些公司新手如何找cps推广渠道
  • 公司手机网站网站平台如何推广
  • 电商网站建设策划书友情链接购买网站
  • 洛阳市住房和城乡建设委员会网站广告网络
  • 凡客官网登录入口网址广告优化师适合女生吗
  • 医院网站建设具体内容百度竞价开户哪家好
  • wordpress cat沈阳seo按天计费
  • 免费个性网站建站淘宝关键词排名怎么查
  • 现在建个企业网站要多少钱怎么做网站模板
  • 网站一键提交seo是什么意思蜘蛛屯
  • 建网站卖虚拟资源需要怎么做seo学途论坛网
  • wordpress装饰公司主题优化大师最新版本
  • 手机网站如何开发网络服务提供者
  • 对网站建设的建议steam交易链接怎么改
  • 村级门户网站建设知乎seo排名的搜软件
  • 网站运营是什么岗位如何免费自己创建网站
  • 宜兴做宠物的网站打开百度浏览器
  • 代做网站毕业设计石家庄seo外包的公司
  • wordpress黑桃锤击昆明seo关键词排名
  • 网站设计方案定制百度关键词工具入口
  • 深圳自适应网站公司管理人员需要培训哪些课程