关于imgui无法使用u8...

本来我一直用imgui没有任何问题,但我昨天(8月1日)升级vs到16.2.0版本之后再生成居然报错

代码:ImGui::Text(u8"Color颜色");

在我没有升级前一切正常,升级后报错:error C2664: “void ImGui::Text(const char *,...)”: 无法将参数 1 从“const char8_t [7]”转换为“const char *”

当我把u8删除,也就是:ImGui::Text("Color颜色"); 时中文是无法正常显示的

我尝试了项目一直是多字节字符集,更新了IMGUI,但没有得到解决。
今早我将项目属性-常规-C++语言标准里的 预览 - 最新 C++ 工作草案中的功能 (std:c++latest)改为了ISO C++17 标准 (std:c++17)就可以正常编译了,但我不知道对我的项目有没有什么影响。
我问了外国朋友,他给出的方法为:Add /Zc:char8_t- option to compiler command line. 我不明白是什么意思,望高人指点

我也遇到了这个问题,经过我的尝试目前得出的结果:大概是因为在vs上的最新版本的c++语言标准(latest c++)下,char8_t(即u8".....")不能给const char*赋值,改成c++ 17或者14等就没问题。

在 项目选项 c/c++ 命令行 从父级或项目默认设置继承 取消勾选 再在 其他选项内填写

/Zc:char8_t-

应用即可