I have a class A
that calls class B
after a signal is emitted. When the user closes B
, I am trying to transfer a QString
value from B
to A
. To do so, I first convert the QString
to a QByteArray
, then I am exchanging the QByteArray
between classes. Finally, I am converting the QByteArray
back into a QString
.
However, during that second conversion, I get this error:
no matching function for call to 'QString::fromLatin1(QByteArray*&)`
Below is my code.
classB.h
(is where the first QByteArray
is implemented):
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
(where that second QByteArray
is implemented):
private:
QByteArray *newUserArray = new QByteArray;
classA.cpp
(where the problem is located):
classB *cUdsfqkjb =new classB();
cUdsfqkjb->show();
if(!cUdsfqkjb->isVisible())
{
newUserArray = cUdsfqkjb->byt;
QString newUser = QString::fromLatin1(newUserArray);
The error is located on the last line.