当前位置:首页 > 每日看点 > 正文内容

求推荐高质量的c++开源项目?

卡卷网1年前 (2025-01-05)每日看点237

推荐几十个吧,这里整理了一些高质量现代C++风格的开源仓库:

    args:s://githu/Taywee/args-命令行参数解析库,代码行数800左右cereal:s://githu/USCiLa/cereal-快速、小巧、方便的二进制JSON序列化库,代码行数4000左右。SQLiteCpp:s://githu/SRomauts/SQLiteCpp-简单易用的SqliteC++封装库,我目前项目中就是使用的这个库,很好用,代码行数2,500左右。fmt:s://githu/fmtli/fmt-现代、安全且快速的C++20format库,代码行数3000左右,最近我就在看这个。spdlog:s://githu/gaime/spdlog
      现在最热门的C++志库,支持多种输出格式和级别,有headeronly和compilesoce两种模式,源码还简单易学,关注我,后面我出一期spdlog的源码分析文章。
    <>aseil:s://githu/aseil/aseil-cpp
      <>Google内部的C++轮子库,各种基础能力都包含,值得学习。aseil还有个:s://aseil.io/
    <>folly:GitHu-faceook/folly:Anopen-soceC++lirarydevelopedandusedatFaceook.
      Faceook内部的轮子库,线程池、内存池、异步IO、executor等,应有尽有。
    lizippp:s://githu/ctain/lizippp-基于zli和lizip的跨平台封装,代码行数2000左右。cista:s://githu/felixguendling/cista-headeronly的序列化-反射库,代码行数1500左右。sqlite_orm:s://githu/fnc12/sqlite_orm-Sqlite的C++ORM封装,代码行数3000左右。chromium:s://githu/chromium/chromiumgoogle浏览器源码仓库,包括edge等很多浏览器和应用都会基于chromium二次开发,阅读它的代码后,也改变了我的部分编程习惯。<>fmtli:s://githu/fmtli/fmt
      <>现代化、快速的C++格式化库,方便易用的API且高效,不使用C++20可以使用这个库做format。
    godotengine:s://githu/godotengine/godot
      看到挺多朋友这个仓库代码质量高
    ctpl:s://githu/vit-vit/ctpl-简易的C++线程池,代码行数看了下,约为500左右。

<>这几个都是现代C++风格的高质量开源代码仓库,值得学习和使用,个人更喜欢folly多一些,spdlog也强烈推荐。

再推荐15个小巧的C语言开源项目:

    <>st:简单的C库,C语言的轮子库,提供了很多实用的工具函数和数据结构。代码行数5000行左右,star数21.5k。picoparser:一个小型的解析器,适用于C语言。代码行数500行左右,star数1.6k。log.c:一个小型的志库,支持多种志级别和输出格式。代码行数200行左右,star数1.8k。sokol:一个跨平台的轻量级图形API,可以方便地创建OpenGL和Metal应用程序。代码行数上万了,star数4.4k。kilo:一个小巧的文本编辑器,可以在终端中运行,并且支持基本的编辑作。代码行数1000行左右,star数5.9k。<>liuv:一个跨平台异步I/O库,常用于Node.js的底层实现。这个库很火。代码行数过万,但是还是推荐,值得学习,star数21.2k。inih:一个小型的INI配置文件解析器,可以用于读取和修改INI文件格式的配置文件。代码行数800行左右,star数2k。nanop:一个小型的Protocoluf库,适用于嵌入式设备和内存受限环境。代码行数5000左右,star数3.4k。miniz:一个小型的ZIP文件压缩和解压库,可以在内存中处理数据。代码行数1600行左右,star数1.7k。linenoise:一个小型的readline替代品,可以用于终端程序的交互式输入,Redis和MongoD中都有使用。代码行数850左右,star数3.2k。picotcp:一个小型的TCP/IP协议栈。代码行数4000行左右,star数995。zlog:一个小型的纯C志库,高性能,多线程。代码行数2000行左右,star数1.8k。limill:一个小型的Go风格协程库,提供了高效的并发编程模型。代码行数3000行左右,star数2.6k。uthash:一个小型的哈希表实现库,可以用于C语言中的任何类型。代码行数1200行左右,star数3.4k。<>cJSON:一个小型的JSON解析器和生成器,可以用于C语言中处理JSON数据,估计C语言开发很多人都会用这个Json库。代码行数1500行左右,star数8.6k。

请注意,上述提到的代码行数仅为粗略估计(粗略看了下),可能不是完全准确。而关于star数量,是在我最近检查时所观察到的数量。

<>你也可以直接上这个上找各种开源仓库,这里收录了很多,强烈推荐:

C++知识库|收录各种各样的C++优质内容

扫描二维码推送至手机访问。

版权声明:本文由卡卷网发布,如需转载请注明出处。

本文链接:https://www.kajuan.net/ttnews/2025/01/6403.html

分享给朋友:

相关文章

4000以下的手机有没有推荐的啊?

4000以下的手机有没有推荐的啊?

可以选择标准版的旗舰机型:vivo X100s、一加12、OPPO Find X7、小米14、iQOO 12;也可以选外观时尚的自拍影像机型:vivo S19 Pro、realme GT 5 Pro、荣耀 200Pro、小米 Civi 4...

是什么让你抛弃了 Windows 而转向 Mac?

是什么让你抛弃了 Windows 而转向 Mac?

别的不说,这玩意儿是真抗造啊,我这2012年买的MacBook Pro,依然在用……这台电脑我博士最后两年用来写代码(只写不运行,运行要上集群)和写论文,工作之后就变成生活和娱乐了,因为我一直用架子和外接键盘(颈椎不好)所以电脑看起来很新,...

为什么我感受不到 1500 元的手机比四五千的差?

我长期使用两千元左右的安卓机,一天接近8小时的重度手机使用者。某天我突然想试试看传说中非常赛艇的苹果。狠了心,砸了钱。七千大样买了爱疯。就这?什么辣鸡玩意。而且因为我一直更新软件,用了两年爱疯就卡了。并没有传说中的用四五年不卡。用了这么一次...

我爸讽刺我,写个破代码一年才十几万,他在工地带50个人,让我回去跟他干,写代码没出路,我该怎么选择?

我跟你一样的情况,本人现身说法,千万不要跟你爸干,我就是反面教材,现在想回去都回不去了,快十年没写代码了,再就是岁数大了,38岁了,35岁以上的码农根本就没公司愿意要,而且会受歧视。工程不好干,首先就是不合法,在法律层面,根本就没有包工头的...

NAS那么好,为什么还是没能成为大多数家庭必备的存储设备?

NAS那么好,为什么还是没能成为大多数家庭必备的存储设备?

最主要原因是因为——贵!看看我家里搭建的这一套吧。目前我家中有5台常用的NAS,分别为群晖DS1522+、威联通TS-464C2、绿联DX4600 Pro 、极空间Z4S、威联通TS-AI642。个人认为,这其中的每台NAS都是时代的翘楚,...

如何进行 Elasticsearch 调优实践?

如何进行 Elasticsearch 调优实践?

面试官心理分析这个问题是肯定要问的,说白了,就是看你有没有实际干过 es,因为啥?其实 es 性能并没有你想象中那么好的。很多时候数据量大了,特别是有几亿条数据的时候,可能你会懵逼的发现,跑个搜索怎么一下 5~10s ,坑爹了。第一次搜索的...

发表评论

访客

看不清,换一张

◎欢迎参与讨论,请在这里发表您的看法和观点。