1
У меня есть структура, как это:Как получить доступ членов структуры внутри QList
struct Flow
{
QLayoutItem * item;
bool shown;
};
Я хотел бы использовать QList
для этой структуры, как это:
QList<Flow> itemList;
Следующая функция дает ошибка компиляции:
void FlowLayout::add(QLayoutItem *item)
{
itemList.item = item;
itemList.shown = true;
itemList.append(itemlist);
}
ошибка:
class "QList<FlowLayout::Flow *>" has no member "item"
Как получить доступ к элементу элемента и добавить его в список?
В Qt работает с автоматическими объектами таким образом, это плохая идея. Вместо этого список должен быть 'QList', а объекты должны быть созданы с помощью' new'. –
Пожалуйста, объясните, почему это плохая идея. –
К сожалению, 'Flow' не является QObject. Пожалуйста, игнорируйте. (Но чтобы ответить на вопрос в любом случае: потому что родители называют 'delete' на своих дочерних элементах. Иногда виджеты Qt вызывают' delete' сами.) –