當前位置: 華文問答 > 數碼

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年多沒重新開機。我覺得很成熟了。