核心内容摘要
拥抱爱意,缠绵时光:解锁“日日”的无限可能
提示文章写完后目录可以自动生成如何生成可参考右边的帮助文档文章目录解决方案推荐优先方案1方案1给指针添加const修饰最安全推荐方案2强制类型转换仅特殊场景使用不推荐
总结typedefwchar_tZTCHAR;ZTCHAR*rstring;rstring_T(insert);报错内容如下不能将 “const wchar_t *” 类型的值分配到 “ZTCHAR *” (aka “wchar_t *”) 类型的实体“”:无法从“const wchar_t [7]”转换“ZTCHAR *”你遇到的问题核心是字符串常量的const属性不匹配_T(insert)在Unicode编码下会生成const wchar_t*类型的只读字符串常量但你的rstring是无const修饰的wchar_t*C/C 为了类型安全禁止将const指针直接赋值给非const指针。
解决方案推荐优先方案1方案1给指针添加const修饰最安全推荐字符串常量本身是只读的不应该被修改因此给rstring加上const限定是符合语义的正确做法typedefwchar_tZTCHAR;// 关键修改添加const匹配字符串常量的const属性constZTCHAR*rstring;rstring_T(insert);// 此时类型匹配不会报错方案2强制类型转换仅特殊场景使用不推荐如果你的代码逻辑中必须使用非const的ZTCHAR*比如调用的接口要求非const参数且确认不会修改字符串内容可以用const_cast强制转换注意修改转换后的字符串会导致程序崩溃/未定义行为typedefwchar_tZTCHAR;ZTCHAR*rstring;// 强制移除const属性仅确认不修改字符串时使用rstringconst_castZTCHAR*(_T(insert));