• 6479阅读
  • 3回复

请教QString.contains('**')函数的问题,遇到一个很诡异的错误 [复制链接]

上一主题 下一主题
离线dearwjj
 
只看楼主 倒序阅读 楼主  发表于: 2010-05-17
类似下面的一段代码:
QString xx="xxxxxxx";
int  zz;
zz=xx.contains('x');
编译出现问题,在第三句将zz.contains()函数的返回值赋值给int型时,提示说: error: invalid conversion from ‘const void*’ to ‘int’.
明明QString.contains函数的返回类型是const Qbool类型的阿,怎么会提示说void*。
离线dbzhang800

只看该作者 1楼 发表于: 2010-05-17
引用楼主dearwjj于2010-05-17 14:19发表的 请教QString.contains('**')函数的问题,遇到一个很诡异的错误 :
类似下面的一段代码:
QString xx="xxxxxxx";
int  zz;
zz=xx.contains('x');
编译出现问题,在第三句将zz.contains()函数的返回值赋值给int型时,提示说: error: invalid conversion from ‘const void*’ to ‘int’.
.......


不要用类似,不妨用你的代码来说明问题
离线dearwjj
只看该作者 2楼 发表于: 2010-05-18
解决问题了,需要经过两次强制类型转换zz=int(bool(xx.contains('x')))
离线foxyz

只看该作者 3楼 发表于: 2010-05-19
contains返回的bool型.
bool zz = str.contains("xxxx")
快速回复
限100 字节
 
上一个 下一个