问题标签 [xerces-c]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c++ - 我如何静态链接到两个版本的 xerces-c(或任何库)?
我知道这不是一件很干净的事情,但是我该怎么做呢?
基本上,我正在静态链接使用 xerces-c 2.7 的第三方库,并且我想使用 xerces-c 3.1(对于 2.x 中没有的一些最新和最强大的功能)
使用 2.7 的模块(由第三方库在内部使用并且从未暴露给我的代码)与使用 3.1 的模块(在我的代码中)没有任何共同之处。
有什么办法可以做到这一点?我知道这不是一件好事,但想到从提交图书馆升级请求到实际完成它之间的准备时间,我不寒而栗。可能至少几个月,我不想走那条邪恶的道路。
一个通用的编译器独立解决方案会好得多。
c++ - 如何在 C++ 中预分配对象而不是使用 new?
我被要求查看的一段 C++ 表现不佳,原因是我们用于在 XML DOM 树中存储节点信息的对象上的“new”调用次数过多。我已经使用 AQTime 和 Very Sleepy 分析器验证了 new 是原因。
这些对象都包含其他几种对象类型和指向对象的指针作为成员,因此节点对象上的每个新对象也会调用所有成员对象的构造函数,我猜这就是每次分配花费这么长时间的原因。这也意味着我们不能只调用像 GlobalAlloc 这样的东西并请求一大块内存——它需要在之后进行初始化。
我一直在研究使用预分配技术来减轻这种糟糕的性能,但是我看到的那些涉及请求大块未初始化的内存,这不适合我需要的东西,而其他人最终最终还是调用 new ,取消任何我们可能会观察到性能提升,所以我想知道是否还有其他我不知道的选项?我有一种感觉,我所要求的无法完成,它要么快速检索未初始化的内存,要么缓慢地初始化内存。请证明我错了:)
谢谢
c++ - Apache Xerces 预构建二进制文件中的 xerces-c_3_1.dll 和 xerces-c_3_1D.dll 有什么区别?
apache xerces 预构建的 Windows 二进制文件中的 xerces-c_3_1.dll 和 xerces-c_3_1D.dll 有什么区别(来自http://xerces.apache 的 xerces-c-3.1.1-x86-windows-vc-9.0.zip .org/xerces-c/download.cgi)?
(同样还有 xerces-c_3.lib vs xerces-c_3D.lib)
我认为它与不同的 xerces 构建选项有关,但我似乎找不到任何描述差异的文档。
c++ - Fastest way to count/ access DOMNode children using Xerces C++
I'm trying to figure out the fastest way to count the number of child elements of a Xerces C++ DOMNode object, as I'm trying to optimise the performance of a Windows application which uses the Xerces 2.6 DOMParser.
It seems most of the time is spent counting and accessing children. Our application needs to iterate every single node in the document to attach data to it using DOMNode::setUserData()
and we were initially using DOMNode::getChildNodes()
, DOMNodeList::getLength()
and DOMNodeList::item(int index)
to count and access children, but these are comparatively expensive operations.
A large performance improvement was observed when we used a different idiom of calling
DOMNode:: getFirstChild()
to get the first child node and invoke DOMNode::getNextSibling()
to either access a child at a specific index or count the number of siblings of the first child element to get a total child node count.
However, getNextSibling()
remains a bottleneck in our parsing step, so I'm wondering is there an even faster way to traverse and access child elements using Xerces.
c++ - 使用 Xerces-C++ 生成 XML
我正在尝试使用xerces
库生成类似于下面的 XML。我找不到合适的例子来效仿;有这方面经验的人可以请教吗?
c++ - DOMElement 没有名为 'getFirstElementChild xercesc C++ 的成员
我正在编写一个名为 .xml 的解析器文件GetConfig.cpp
。这是我的“GetConfig.h”头文件:
但是,当我尝试编译程序时,我得到:
我不知道为什么我会得到那个......在那个声明中我使用:
我不确定......也许与版本有关xercesc
?当我编译它时,xercesc 3.1
它工作得很好。
c++ - 如何使用 xerces 向 xml 添加属性?
我目前使用以下代码在 C++ 中使用 xercer 生成了一些 XML:
但是我正在尝试获取顶部“广告”元素中的属性(如下所示),但是我这样做的运气不大,有使用 xerces 经验的人可以请教。
提前致谢!
c++ - 以下 xerces 代码会导致内存泄漏吗?
我查看了我在互联网上找到的 xerces 生成 XML 的示例。Transcode 函数似乎执行了一些编码,但它填充的缓冲区从未被释放。根据文档,您必须手动释放 ti:
注意:返回的缓冲区是动态分配的,调用者有责任在不再需要时将其删除。您可以调用 XMLString::release 来释放这个返回的缓冲区。
doc->release 可以从内存中释放它吗?
c++ - 将 C++ 头文件中定义的嵌套结构中的信息转储到 XML
我正在编写一个 C/C++ 头文件解析器,它将 .h 文件转换为特定的 XML 格式。
我有一个定义如下的结构:
我希望将上述结构表示为:
我的方法:我使用的是 2 阶段过程,我首先将头文件转换为 gccXML 格式,然后使用 xerces-C++ for Visual Studio 将结果打印到 XML 文件中。我能够成功解析除嵌套结构或联合之外的所有内容(枚举、typedef 等)。somebpdy 可以请帮助我了解如何执行此操作吗?谢谢!
xml - 如何为 xml 命名空间设置默认值?
我在每个 xml 文件中都有一些这样的命名空间定义:-
有没有办法让我将这些指定为默认值,这样我就不必在每个 XML 文件中都写这个?
如果有帮助,我主要使用 xerces-c 进行解析,但我更喜欢独立于库的解决方案。