我有一个具有此签名的方法
void SetFoo(QString& foo);
我正在尝试内联传递一个空字符串,但以下都没有编译
SetFoo("");
SetFoo(QString(""));
(错误:没有匹配的函数调用 'MyClass::SetFoo(QString)')
但是如果我创建一个这样的变量,它就可以工作。
QString emptyFoo = "";
SetFoo(emptyFoo);
有没有办法在不显式创建变量的情况下调用该方法?
注意:使用 vc++ 编译器在 windows 环境中似乎一切正常,但我在使用 g++ 的 linux 环境中遇到上述编译错误。