【发布时间】:2018-12-19 18:53:00
【问题描述】:
我有一个类 A 在发出信号后调用类 B。当用户关闭B 时,我试图将QString 值从B 转移到A。为此,我首先将QString 转换为QByteArray,然后在类之间交换QByteArray。最后,我将QByteArray 转换回QString。
但是,在第二次转换期间,我收到此错误:
没有匹配函数调用'QString::fromLatin1(QByteArray*&)`
下面是我的代码。
classB.h(是实现第一个QByteArray的地方):
public :
QByteArray *byt = new QByteArray;
classB.cpp:
void classB::foo(QString userame, QString password)
{
//Some other code
QString usernameOfNewUser;
usernameOfNewUser = userame;
byt = usernameOfNewUser.toLocal8Bit();
qWarning(byt->data());
}
classA.h(第二个QByteArray 被实现的地方):
private:
QByteArray *newUserArray = new QByteArray;
classA.cpp(问题所在):
classB *cUdsfqkjb =new classB();
cUdsfqkjb->show();
if(!cUdsfqkjb->isVisible())
{
newUserArray = cUdsfqkjb->byt;
QString newUser = QString::fromLatin1(newUserArray);
错误位于最后一行。
【问题讨论】:
标签: c++ qt qstring qbytearray