通常我会通过说将项目添加到 QCombobox:
QCombobox cbb;
cbb.addItem("Hello");
但是如果我尝试这个,我会得到一个错误:
QComboBox cbb;
QString * s = new QString("hallo");
cbb.addItem(s);
error: no matching function for call to 'QComboBox::addItem(QString*&)'
我该如何解决这个问题?
最佳答案
不要在 QString
中使用动态内存分配. QString
在内部处理字符串的内存管理 - 如果您为 QString
分配内存对象自己,你也需要照顾释放内存。
在您的情况下,只需使用
QComboBox cbb;
QString s = "hallo";
cbb.addItem(s);
关于qt - 如何将字符串添加到 QCombobox,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14645674/