error C2664: “ATL::CStringT::Remove”: 不能将参数 1 从“const char [2]”转换为“char”

发布于 2020-05-05  50 次阅读


问题描述:

代码:

CString str(“asdfafda”);

str.Remove(“asd”);

编译报错

error C2664: “ATL::CStringT<BaseType,StringTraits>::Remove”: 不能将参数 1 从“const char [4]”转换为“char”

error C2664: “ATL::CStringT<BaseType,StringTraits>::Remove”: 不能将参数 1 从“const char [2]”转换为“char”

解决方法:

Remove只能处理单个字符,不能处理字符串,比如str.Remove(‘a’);注意是单引号,如果是双引号会继续报错:

error C2664: “ATL::CStringT<BaseType,StringTraits>::Remove”: 不能将参数 1 从“const char [2]”转换为“char”


一沙一世界,一花一天堂。君掌盛无边,刹那成永恒。