草庐IT

C++ XML 到 C++ 对象映射库?

有没有什么好的自动xml转C++对象库?具有良好的基准测试和多平台支持(如果不是至少linux)编辑:更多说明我想去图书馆http://www.codesynthesis.com/products/xsd/我可以在哪里使用任何xml作为C++对象。XMLOBJECTx=newXMLOBJECT("my.xml");x->rootx->root->child在C++中表示XML数据绑定(bind) 最佳答案 我认为你指的是所谓的XMLDataBinding.gsoap是一款免费工具。当然还有许多商业工具——XMLSpy和其他工具。He

c++ - Ensures() - 指南支持库

我想了解如何在代码中使用Ensures()。正如example中给出的那样,如果我尝试使用Ensures()如下...intmain(void){intresult=0;//SomecalculationEnsures(result==255);return0;}如果result变量不等于255,程序会崩溃并输出以下“terminatecalledwithoutanactiveexception”。我的问题是如何正确使用Ensures()? 最佳答案 您使用的是MicrosoftGSLimplementation?那么如果你检查th

c++ - Visual C++ 2010 是否支持 C++11 线程库?

我正在使用VisualC++2010。它是否支持C++11线程库,以便我可以编译代码inthisquestion?如果没有,我可以使用哪个库来支持它? 最佳答案 VisualC++2010不提供C++11线程支持或原子库。如果您想在VisualC++2010中使用该代码,则需要使用这些库的第三方实现。一种选择是just::thread;它不是免费的,但我有一个拷贝并且对它非常满意。或者,您可以使用另一个跨平台线程库,例如Boost.Thread或OpenThreads,或者使用一个nativeWindows线程库。这些选项中的任何一

c++ - C++ 中的基本图像处理库

我正在寻找一个很棒的C++库来进行基本的图像处理。我需要做的是能够将图像转换为灰度图像并能够读取图像的像素。我看过OpenCV、GIL、CImg和Magick++,但要么它们不太好,要么我不知道如何使用库将图像转换为灰度。 最佳答案 如果您要自己将颜色转换为灰度,您通常不想对三个channel给予同等的权重。通常的转换是这样的:灰色=0.3*R+0.6*G+0.1*B;显然,这些因素并非一成不变,但它们应该相当接近。您可以通过更改因子来模拟不同颜色的滤镜——到目前为止,黑白摄影中最常见的滤镜是红色,这意味着增加红色并减少其他两个以保

c++ - 跨平台 Windows/OS X 开发,具有大量现有代码库

复杂应用程序的现有代码库很大,它是使用MFC和WinAPI用C++编写的,需要移植到MacOSX。理想的解决方案是在不同平台之间拥有尽可能多的通用代码,尤其是代码比如业务逻辑。GUI可能会有所不同,具体取决于可用于跨平台GUI的工具有多好。有一些低级操作系统调用在不同平台上会有所不同。主要目标不是最终​​得到需要单独开发和维护的两个不同版本的软件。我一直在关注Qt,但我很想知道还有哪些其他替代方案,以及过去人们是如何解决这个问题的。如果您要移植一个用MFC编写的现有应用程序,您会使用什么/您会怎么做?如果您可以在两个平台上从头开始这个项目,您会使用什么/您会怎么做?

c++ - 诅咒库 : why does getch() clear my screen?

我正在尝试使用C++学习curses库(pdcurses,因为我在Windows操作系统中)。我有一个显示3个窗口的程序,然后是一个while循环来根据getch()捕获的按键进行一些处理。当按下F1键时,循环退出。然而,尽管使用wrefresh()刷新了所有三个窗口,但在我输入第一次按键之前没有任何显示。没有while循环,一切都显示正常。我做了很多测试,好像第一次调用getch()会完全清除屏幕,但后续的不会。我的问题是:我错过了什么?起初,我想也许getch()正在调用一个隐式的refresh(),但为什么后续调用它的行为不同?非常感谢您的帮助。这是代码。#includeintm

c++ - 将库导入我的 C++ 项目时出现问题,如何解决?

我正在使用IDE来编译我的程序,并且在导入/集成特定库时遇到一些麻烦。我收到类似这样的错误消息fatalerror:3rdPartyLib.h:Nosuchfileordirectory一个#include"3rdPartyLib.h"声明ld.exe:cannotfind`lib3rdParty.a`用于指定3rdParty在附加库中至少我得到了一些错误信息,比如undefinedreferenceto`lib3rdParty::foo()'我该怎么做才能解决这个问题? 最佳答案 这是一个常见的误解,认为当前使用的IDE会导致出现

c++ - GCC 编译的静态库包含什么?

我的应用程序链接到libsamplerate.a。我这样做是为了更轻松地分发最终的二进制文件。我担心.a文件中的代码可能依赖于我也需要分发的其他一些库。但如果不是这样,我担心我会通过包含多个拷贝来过度膨胀我的应用程序。库。libsamplerate.a中到底有什么?只是libsamperate的字节码?还是更多? 最佳答案 一个.a文件基本上就是一堆.o文件。您可以使用ar工具对此进行演示。例如,要显示您图书馆的内容:ar-tlibsamplerate.a从头开始创建.a文件:ar-rtim.a*.txt

c++ - 静态编译共享库

我有一个带有一些自制函数的共享库,我将其编译到我的其他程序中,但我必须将最终程序与我用来编译静态库的所有库链接起来。这是一个例子:我在库中有函数foo,它需要来自另一个库libbar.so的函数。在我的主程序中使用函数foo我必须用-lbar标志编译它。有没有一种方法可以静态编译my库,以便它包含来自其他库的所有必需代码,并且我可以在不需要-lbar标志的情况下编译我的最终程序? 最佳答案 共享对象(.so)不是库,而是对象。您不能提取其中的一部分并将其插入其他库。如果构建一个引用另一个的共享对象,您可以做什么——但在运行时将需要另

c++ - 如何使用 g++ 静态链接除少数库之外的所有库?

我要求静态链接我的所有库,包括libstdc++、libc、pthread等。有一个omniorb库我想动态链接。目前我已经动态链接了所有的库。ldd显示以下内容linux-vdso.so.1=>(0x00007fff251ff000)libpthread.so.0=>/lib64/libpthread.so.0(0x00007f291cc47000)libomniDynamic4.so.1(0x00007f291c842000)libstdc++.so.6=>/usr/lib64/libstdc++.so.6(0x00007f291c536000)libm.so.6=>/lib64/