gpt4 book ai didi

c++ - 错误 : no operand "<<" matches these operands when try to use Qstring with OStream object

转载 作者:行者123 更新时间:2023-11-28 00:37:30 27 4
gpt4 key购买 nike

Qt 版本 5.01
平台 windows 64 位

问题:错误:没有操作数“<<”匹配这些操作数

我查看了网络但无法找到解决方案。我尝试了很多东西,但没有用。如果我将 QString 更改为 std::string,则它会正确编译。但随后我将失去我需要的 QString 的 sprintf 功能。

ii) 其次,我曾尝试按照其他论坛中某人的建议,使用 extern 关键字在头文件中删除相同的函数名称,但它不起作用。所以请你们让我知道我在哪里犯了错误。下面是我的代码

#include <sstream>
#include <QString>
#include <string>
#include <QTime>

namespace
{
std::ostream& operator <<(std::ostream& os , const QTime& system_time )
{
QString buffer ;
const double seconds = double( system_time.second() ) + ( system_time.msec()/1000.0 ) ;
buffer.sprintf( "%02i:%02i:%06.3f", system_time.hour(), system_time.minute(), seconds );
os << buffer; // error here
return os;
}
}

感谢和问候,

最佳答案

Qt 提供qPrintable(someQString) 使其与cout 或printf 兼容。

关于c++ - 错误 : no operand "<<" matches these operands when try to use Qstring with OStream object,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20334075/

27 4 0
文章推荐: c++ - 从字符串中删除字符
文章推荐: C++ - 从 'void*' 到 'uint8_t**' 的无效转换
文章推荐: javascript -