V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
bfjm
V2EX  ›  C++

有什么 c/c++的项目推荐吗

  •  
  •   bfjm · 2022-09-25 16:31:43 +08:00 · 4757 次点击
    这是一个创建于 788 天前的主题,其中的信息可能已经有所发展或是发生改变。
    想学习了解偏底层的知识或者能学习 morden c++的,本身有两年 c++经验,有什么 c/c++的项目推荐吗 最好是有文档的,代码质量比较好的。
    27 条回复    2022-12-15 00:13:05 +08:00
    janus77
        1
    janus77  
       2022-09-25 17:19:46 +08:00   ❤️ 1
    啥叫偏底层
    有行业要求吗,图形处理?人工智能?搜索算法? web 服务器?
    roundgis
        2
    roundgis  
       2022-09-25 17:25:11 +08:00   ❤️ 1
    rapidjson
    xsen
        3
    xsen  
       2022-09-25 17:26:12 +08:00   ❤️ 1
    WebRTC
    ysc3839
        4
    ysc3839  
       2022-09-25 18:49:54 +08:00 via Android   ❤️ 1
    如果是搞 Windows 开发的话可以看看 wil https://github.com/microsoft/wil
    主要是 RAII resource wrappers https://github.com/microsoft/wil/wiki/RAII-resource-wrappers
    虽然 RAII 并不是非常 modern 的特性了,可能 C++03 甚至 C++98 都能用,但个人认为用简单的一层 RAII 封装代替手动释放资源是很典型的把 C 语言代码现代化为 C++代码的方案。另外 wil 仅仅是封装了指针本身,相比 MFC 那种把函数都封装的库,前者恰到好处,代码量不大。
    虽然 wil 是给 Windows 用的,但实际上许多代码是与系统无关的,可以提出来拿到别的系统用。个人希望有个现成的类似的 wil 库可以在 Linux 等系统上用,C++标准库里的 unique_ptr 可以解决部分问题,但没有 wil 那么灵活,比如 POSIX open 打开文件后返回的是 int 的 fd ,此时就不能用 unique_ptr 了。
    还有一个技巧是标准库的 std::string 和 std::vector 可以 resize 后用 data()获取内部 buffer ,然后作为缓冲区传递给一些 C API ,可以减少一次拷贝。
    Joshua999
        5
    Joshua999  
       2022-09-25 19:05:58 +08:00 via Android   ❤️ 1
    matter
    dreasky
        6
    dreasky  
       2022-09-25 19:22:19 +08:00   ❤️ 1
    linux 内核
    dabaibai
        7
    dabaibai  
       2022-09-25 19:26:54 +08:00   ❤️ 1
    nodejs
    dabaibai
        8
    dabaibai  
       2022-09-25 19:27:00 +08:00   ❤️ 1
    boost
    Fanhe
        9
    Fanhe  
       2022-09-25 19:36:17 +08:00   ❤️ 1
    redis
    bytesfold
        10
    bytesfold  
       2022-09-25 20:12:17 +08:00 via iPhone   ❤️ 1
    sqlite
    bfjm
        11
    bfjm  
    OP
       2022-09-25 20:21:03 +08:00
    @ysc3839 好滴 感谢老哥 kiss kiss
    taowen
        12
    taowen  
       2022-09-25 20:43:02 +08:00
    c++ library 和 c++ application 是两个世界
    gzypt
        13
    gzypt  
       2022-09-25 21:18:54 +08:00
    @janus77 我想要一些图形学相关的开源项目,最好是游戏引擎那些的,感谢
    bfjm
        14
    bfjm  
    OP
       2022-09-25 22:25:41 +08:00
    @gzypt godot 就是个开源的游戏引擎
    bfjm
        15
    bfjm  
    OP
       2022-09-25 22:26:16 +08:00
    @taowen 关于 library 相关的 大佬有推荐的吗
    victorc
        16
    victorc  
       2022-09-25 22:30:59 +08:00
    clickhouse

    看懂了还可以帮你找份工作
    codechaser
        17
    codechaser  
       2022-09-25 22:36:49 +08:00
    HPC 反向有吗
    littlewing
        18
    littlewing  
       2022-09-25 23:22:50 +08:00
    rocksdb
    passer9527
        19
    passer9527  
       2022-09-26 08:31:38 +08:00 via iPhone
    jvm
    stardew
        20
    stardew  
       2022-09-26 09:02:42 +08:00
    @gzypt Hazel
    dabaibai
        21
    dabaibai  
       2022-09-26 10:11:10 +08:00
    @gzypt unreal engine 目前在用
    junmoxiao
        22
    junmoxiao  
       2022-09-26 10:31:22 +08:00
    POCO ?
    wanmyj
        23
    wanmyj  
       2022-09-26 10:55:15 +08:00
    用 file explorer++入门,都挺简单的,改两个 bug issue 就算会用了。只是它不是 C++11 的,但入门也够了,还可以理解下为啥要用 RAII
    https://github.com/derceg/explorerplusplus
    andyskaura
        24
    andyskaura  
       2022-09-26 11:15:31 +08:00
    去玩一玩 chromium ,玩明白了记得写个博客教教我。webrtc 也可以
    leegradyllljjjj
        25
    leegradyllljjjj  
       2022-09-26 11:19:44 +08:00
    adobe 全家桶 基本都是 C++开发的
    taowen
        26
    taowen  
       2022-09-27 13:48:00 +08:00
    @bfjm 不建议阅读 c++ library ,都是黑魔法
    bfjm
        27
    bfjm  
    OP
       2022-12-15 00:13:05 +08:00 via iPhone
    update jsoncpp
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   3399 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 28ms · UTC 11:30 · PVG 19:30 · LAX 03:30 · JFK 06:30
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.