The C++20’s u8/char8_t Backward-Compatibility Fiasco
giodicanio.com原文 ↗
C++20 把 `u8"..."` 从 `const char[N]` 改成 `const char8_t[N]`,因此原本传给 `const char*` 的代码会在切换标准后报错。文章用一个最小例子揭出大库升级的真实破坏面,并提醒 C++23 还会再改变相关语义;规避方式往往是减少不必要的 `u8` 前缀。
–浏览
评论 · Comments