在C++中,有一种方法可以将char强制转换为int并获得ascii值作为返回。有没有这样的方法可以对qchar进行同样的处理?由于unicode支持这么多字符,而且其中一些字符实际上看起来很相似,所以有时很难判断要处理的是什么。一个明确的代码点或一个可以用来获得这样的数字将非常有用。
我在网上和这个网站上搜索了一个解决方案,但到目前为止运气不好,Qt文档也没有多大帮助,除非我忽略了什么。
提前谢谢!
编辑:
也许我对这件事不够清楚,对不起。
这里有一些代码:
char chChar = 'a';
cout << (int)chChar; // will output 97, not 'a'
此外,Qt允许:
QChar ch = 'a';
if(ch == 0x61)
//...
据我所知,ch对象中必须有一些与unicode代码点有关的信息。有没有可能把它弄出去?
花了一些时间,但我找到了答案:QChar
有一个名为QChar::unicode
的成员,它返回一个带有代码点的ushort
。只是为了记录。