找了好几天百度,GPT也问过,始终得不到准确的答案,后来调试了才发现,原来是debug和release调试是配置属性高级设置不一致。
代码中有使用到_T这个宏定义将字符串类型转化为宽字符,debug中字符集使用的是多字节字符集,release中使用的是Unicode字符集。而且使用_T居然也不报错,这就导致release调试时识别不到转义的宽字符串,导致断点未命中,命令行不起作用。
修改release调试时字符集为多字节字符集后,命令行生效,可以正常使用。
综上,更改调试类型的时候必须好好检查属性配置,保持一致才能进行调试。