I am trying to use some vector data's name with struct
. I am trying to get see which name in qDebug()
To be more clear:
const std::string& testName = "asdfqwer";
qDebug() << testName;
It gives en error message in build:
Error: no match for 'operator<<' in 'qDebug()() << testName'
I don't have options to change const std::string&
type. Could you please help me to solve this issue without changing type?
qDebug()
does not know anything about std::string
but it works with const char*
. Appropriate operator you can find here. You can achieve this with data()
or with c_str()
which is better as Jiří Pospíšil
said.
For example:
const std::string& testName = "asdfqwer";
qDebug() << testName.data() << testName.c_str();
Aslo you can convert std::string
to QString
with QString::fromStdString.