因此,您创建了以下列表:
QList<MyInt*> myintarray;
然后您稍后尝试附加
myintarray.append(new const MyInt(1,"intvar1",&parent));
问题是新的const MyInt正在创建const MyInt ,您不能将其分配给MyInt ,因为它会失去constness。
您要么需要更改QList来保存const MyInts,如下所示:
QList<const MyInt*> myintarray;
或者您不需要通过将追加更改为以下内容来创建const MyInt *:
myintarray.append(new MyInt(1,"intvar1",&parent));
您将选择的方法将完全取决于您要如何使用QList。如果您不想更改MyInt中的数据,则只需要const MyInt *
问 (C ++ QT)QList仅允许追加常量类对象?