有没有不同的方法来创建QObject的动态数组?以下代码无法编译:
QStringList labels = defaultScene->getLabels();
QAction* traceActions = new QAction[labels.size()];
错误是:
C2512:'QAction':没有合适的默认构造函数
答案 0 :(得分:1)
你看到了这个,因为QAction没有默认的构造函数。
你可以创建一个指向QAction的指针数组,然后在它自己实例化每个QAction。
大致类似于:
QAction** actions = new (QAction*)[labels.size()];
for(size_t i = 0; i<labels.size(); ++i)
{
actions[i] = new QAction(constructor params ...);
}