C++ 有哪些流行的开发框架或库?

这是我在知乎上回答的一个问题,不到两周收藏数超过 500,点赞还不到 100,看来 C++ 程序员还是不少,且大家都想进步。

不过从“收藏”就是“学过”的这种风气来看,大概率只是扫一眼,然后放到收藏里吃灰了。

下面是我在知乎上的回答。


Github 上有个 awesome-cpp,分门别类的列出了很多有用的库,当然里面包含了 C 库,你懂的,完全兼容。

我个人用的比较多的库有以下这些:

  • C++ Standard Library - C++ 标准库,C++ 标准的一部分,这个没什么可说的,基本上不可能不用。
  • cJSON - 这其实是个 C 库,简单封装下用起来还是很方便的,性能一般。
  • JsonCpp - C++ JSON 解析库,用法简单,性能也还好吧。
  • RapidJSON⚡ -国人写的 JSON 解析库,目前是性能最好 JSON 解析库,就是用起来有点复杂。
  • spdlog - 一个非常快的日志库,只需要包含头文件就可以使用,用起来比较方便,但是不能增量编译,会增加编译时间。
  • glog - Google 出品的日志库,这个其实用的不多哈 ,就是太有名了。
  • QuantLib- 一个开源的量化金融库,有很多金融工程上用到的函数。
  • TCMalloc- Google 出品的内存管理库。
  • ACE- 一个经典的用来教学的网络库,用了各种设计模式,被称为“学之者生,用之者死”,作者就是为了秀自己的设计模式用法,工作早期用过。
  • Boost.Asio⚡ - 准标准网络库,目前还没有入选标准库,网络库也是 C++ 的一个痛点,太多了,没有标准。
  • CppServer- 基于 asio 的一个网络库,支持 TCP, SSL, UDP, HTTP, HTTPS, WebSocket,作者是做交易系统的,我关注了这个作者,写了很多代码。
  • libcurl- 网络协议实现的瑞士军刀。
  • librdkafka- Kafka 客户端的 C 和 C++ 实现,作者已经到 Kafka 的商业支持公司 confluent 工作了,从那以后,代码更新速度明显加快,而且对 C++ 的支持更好了。其他语言的 Kafka 客户端库基本都是对该库的封装。
  • libwebsockets - C 语言实现的 WebSocket 库,支持 server 和 client。
  • Muduo- 陈硕编写的多线程网络库,只能用在 Linux 平台,他写了一本书,介绍 Linux 网络编程,影响了很多 C++ 程序员。
  • ZeroMQ- 一个高性能、异步网络通信库,原作者因病去世,有其他人在维护。在国内量化金融圈用的还是挺多的。
  • Libxml2- XML 解析库,是个 C 库。
  • yaml-cpp- YAML 解析器。

这是 awsome-cpp 列表:

C++ awesome library 1
C++ awesome library 2

每个类别下面都有链接和说明,其中不乏一些知名的库。

还有一些常用软件:

C++ Software

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值