加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

c – 操作符<< for QString

发布时间:2020-12-16 03:27:09 所属栏目:百科 来源:网络整理
导读:实现对于QString来说: std::ostream operator (std::ostream stream,const QString str){ stream str.toAscii().constData(); //or: stream str.toStdString(); //?? return stream;} 而不是写作 stream str.toAscii().constData(); 每次在代码中. 然而,由
实现<<对于QString来说:
std::ostream&  operator <<(std::ostream &stream,const QString &str)
{
   stream << str.toAscii().constData(); //or: stream << str.toStdString(); //??
   return stream;
}

而不是写作

stream << str.toAscii().constData();

每次在代码中.

然而,由于它不在标准的Qt库中,我假定有任何特殊原因不这样做.重载的风险/不便是什么?如上所述?

解决方法

如果<操作符被包含在Qt库中,库的每个客户端都必须使用完全相同的实现.但是由于QString的本质,这远远不是这些客户想要的.有些写西班牙传统文件软件的人可能想使用Latin1()字符,美国人可能会用Ascii()和更多的现代软件可能想使用Utf8(). 在图书馆中进行单一的实施将会限制整个图书馆可以做的事情.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读