什么是有趣的C/C++;图书馆可以玩吗? 我正在寻找一些新的库,以及C和C++。在过去的大部分时间里,我“偶然”发现了一些——其中大多数都在我所从事的项目中得到了很好的应用

什么是有趣的C/C++;图书馆可以玩吗? 我正在寻找一些新的库,以及C和C++。在过去的大部分时间里,我“偶然”发现了一些——其中大多数都在我所从事的项目中得到了很好的应用,c++,c,posix,libraries,C++,C,Posix,Libraries,库应该在Mac OS X和Linux/POSIX上运行,也可能在Windows上运行 -一个用于配置文件和基本应用程序脚本的最小且快速的脚本引擎 -谷歌引擎的快速JavaScript,类似于WebKit的JavaScriptCore -与Mac OS X上的QuickDraw/Quartz类似的良好graphcis库 -条形码扫描仪库,允许扫描照片/图像/视频流中的条形码并返回其值 -非常紧凑的数据流压缩库。也使用zziblib和minizip -易于使用的PDF生成库 -一个通用USB库,允

库应该在Mac OS X和Linux/POSIX上运行,也可能在Windows上运行

  • -一个用于配置文件和基本应用程序脚本的最小且快速的脚本引擎
  • -谷歌引擎的快速JavaScript,类似于WebKit的JavaScriptCore
  • -与Mac OS X上的QuickDraw/Quartz类似的良好graphcis库
  • -条形码扫描仪库,允许扫描照片/图像/视频流中的条形码并返回其值
  • -非常紧凑的数据流压缩库。也使用zziblib和minizip
  • -易于使用的PDF生成库
  • -一个通用USB库,允许便携式访问USB设备(我用它为自定义POS打印机编写了一个基本驱动程序)
  • -如果您希望呈现HTML/Web内容并在应用程序中使用它来为用户提供“更丰富”的用户体验,这是一个非常好的方法
  • -用于各种桌面(可能还有移动设备)开发的通用框架。我花了很多时间在这件事上——不知道我怎么会忘记这一点
这应该标记为CommunityWiki。请更新,如果你有什么有趣的添加

谢谢


更新1
我不是在寻找像Boost或STL这样的“生产力”库。相反,我正在寻找随机类型的“有趣的新东西”——可以是图形库、脚本库、网络库,甚至是MOD/MIDI播放库。对不起,我以前没有明确指出。

< P>每个C++程序员都应该首先使用这两个库:

  • C++标准库-包括STL容器、STL算法、STL函数等
用于GUI

    • 似乎是一个显而易见的选择


      但是如果你想找一些更具体的东西,那么现在这个库似乎引起了很多兴趣-它是一个开源的计算机视觉库。

      STL和Boost是必须的

      提供一个完全嵌入的、功能齐全的关系数据库,只需10万美元,您就可以将其包含到项目中。这也是一项极具市场价值的技能,因为它的高知名度(它包括在Mozilla Firefox以及Android和iOS中)

      如果您对创建用户界面感兴趣,可以研究一下——它是用于创建许多终端用户界面的库,对于创建游戏和shell实用程序非常有用。是一个很好的C++图形用户界面框架。

      如果你对图形感兴趣或制作游戏,考虑SDL或OpenGL(或者DirectX,如果你不介意只在Windows上工作)。


      当然,这里有成千上万个有趣的图书馆。这真的取决于你对什么感兴趣。

      我喜欢玩cimg,它是一个非常好的、易于使用的图像库,很适合乱搞:p


      < P>我知道你在寻找可以融入你日常工作的图书馆,但是对于一个家庭项目来说,C++ WiMoT库可能会引起一些有趣的项目:

      可能会引起兴趣

      可视化库是C++ 用于高性能二维和三维应用的中间件 基于 行业标准OpenGL 1.x-4.x, 设计用于开发便携式 适用于Windows和Linux的应用程序 以及Mac OS X操作系统


      是一个开源物理引擎,具有3D碰撞检测、柔体动力学和刚体动力学功能。在游戏中,在电影中的视觉效果。

      < P>如果你进入图像处理等,那么玩游戏可能会很有趣。

      < P>为什么不尝试去浏览3D图形?

      < P>最后一次我和C++有关的东西有了乐趣。 它是一个包装器/接口生成器,它允许您将C++代码链接到Python。 意识到使用SWIG是多么简单,这本身就很有启发性和乐趣。 然后可以在Python和C++库之间进行混合。
      玩得开心

      食人魔已经被提到了。如果你想进入3D,那么我发现很容易学习


      是一个机器人控制界面和仿真库。你可以模拟机器人或者在真实的机器人上运行它。

      Boost但不包括生产部分:)

      Xpressive或如何在模板中编码正则表达式

      MPL将为模板的使用提供一个新的视角,您将对模板元编程有更深入的了解,并深入挖掘SFINAE和模板推导的精妙之处

      预处理器将为预处理器的使用和滥用提供新的线索。当使用模板生成模板函数和类的多个重载时,它非常方便(事实上MPL就是基于它的)。虽然随着……的出现,人们的兴趣有所减弱

      C++0x

      新的标准库及其线程

      学习使用
      std::future
      std::function
      ,发现lambdas的乐趣,基于范围的
      语法,以及
      auto
      关键字

      C++0x有太多的新玩意儿,让人感觉像是一种新语言。。。这也是一个很好的刷你的旧技能和一个很好的方式留在这里。

      :

      一个类似hibernate的SQLite接口,应该有人用它来编写mysql驱动程序

      :

      将新代码动态地JIT到c中++

      用于游戏开发-
      用于GUI开发-


      这两个库都是开源的。

      如果你想玩(分类器之类的东西),或者尝试创建自己的算法,但想使用一些有用的工具(例如现成的优化和线性优化)