当前位置: 华文问答 > 数码

Modern C++有哪些能真正提升开发效率的语法糖?

2018-10-18数码

我做服务器,经常写异步逻辑,我觉得最好的语法糖还是协程吧。asio的对于使用协程的姿势已经很舒服了:

auto [read_result, read_timeout] = co_await ( from.async_read_some(buffer(data), use_nothrow_awaitable) || timeout(5s) // 其实这也是一个协程 ); if (read_timeout) co_return; // timed out auto [e1, n1] = *read_result; if (e1) break; auto [write_result, write_timeout] = co_await ( async_write(to, buffer(data, n1), use_nothrow_awaitable) || timeout(1s) ); if (write_timeout) co_return; // timed out ...

我下半年应该就会在项目组中升级最新的gcc,主要是为了使用协程的功能。我自己已经学习试用好几年了,用协程写的某个server已经跑了2年多没重启。我觉得很成熟了。