成为Qt
的新手,我不知道该如何创建
QMenu
的向量。
使用C++
,我有以下想法(简单):
std::vector<QMenu> *subMenus;
,然后使用for-loop
创建一定数量的菜单。
for (int i = 0; i < List.size(); ++i)
{
subMenus[i] = new QMenu('some name',MainMenu);
MainMenu->addMenu(subMenus[i]);
}
其中List的大小较大(〜40)。
问题在于这样做时,我遇到以下错误消息,该错误消息引用了索引i
:
expression must have a constant value
。
我不确定是否应该使用append或推回subMenu来避免此错误。
谢谢
答案 0 :(得分:2)
您可以使用以下内容:
QVector<QMenu*> menuVector;
for (int i = 0; i < 40; ++i)
{
auto* menu = new QMenu('some name', MainMenu);
menuVector.push_back(menu );
MainMenu->addMenu(menu);
}