@NewYear C++的语法也特丰富,不同的人几乎写出不同语言的味道。我这是属于 monadic c++. https://github.com/coderealm-atlas/cert-ctrl ,主要是受 spring webflux 和早期 Haskell 的影响。
c++ 标准太多了, 不同的标准 c++ 之间差别都很大, 还有到现在 c++ 标准库还没有提供统一的网络编程接口,对于很多人来说,写个应用层的程序有困难, 底层引擎不存在差别, 甚至 c++ 老练经验丰富的程序员多, 比很多其他语言开发还有优势,rust 是不可能在底层各种引擎比如(图像渲染、AI 计算、HPC 计算、游戏引擎)代替 c++的。
@mightybruce 没有统一网络编程接口不见得是坏事,不同的场景选择不同的库反而更加有利。其实以我的年龄和精力写 C++不合适( AI 以前),但有了 AI 就不一样了,人主要负责思考,工具使用,测试什么的都由 AI 代劳了。比如这个,https://github.com/coderealm-atlas/http_client ,在使用其它语言时不会想到去实现一个,但因为是 C++,有什么是 C++实现不了的呢?:), 当然这个也不是实现,只是在 boost beast 外面包裹了一层,让它符合我的编程风格而已,相当于一个小 helper.
shared_from_this 就是硬拿补丁当 feature 的例子。良好的结构设计就不应该出现对象自己抓自己的情况,应当显式外部传递 shared ptr 。你看隔壁 rust 直接不让你这么玩。