gpt4 book ai didi

c++ - Hello World Qt 创建者

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

我正在尝试制作一个简单的对话框来显示我的名字。看代码。

Pessoa *p = new Pessoa("Ronald Araújo", "ronald.araujo@live.com", 23);

QMessageBox msg; msg.setText(QString::fromUtf8(p->getNome()));
msg.exec();

但代码在 setText() 行中断并出现以下错误:

error: no matching function for call to 'QString::fromUtf8(std::string)'
msg.setText(QString::fromUtf8(p->getNome));

请记住,当我输入例如 msg.setText(QString::fromUtf8("Hi World")) 时,代码运行正常。

返回名字的实现:

string Pessoa::getNome(){ return this->nome; }

最佳答案

QString 不能直接从 std::string 构造。您有两个我可以立即想到的选项:

要么改变

string Pessoa::getNome(){ return this->nome; }

QString Pessoa::getNome(){ return this->nome; }

或改变

 QMessageBox msg;
msg.setText(QString::fromUtf8(p->getNome()));
msg.exec();

QMessageBox msg;
msg.setText(QString::fromUtf8(QString::fromStdString(p->getNome())));
msg.exec();

关于c++ - Hello World Qt 创建者,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24274302/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com