Ваши параметры зависят от того, поддерживает ли RmgController
перемещение (если вы предоставили ему пользовательские операторы копирования и / или пользовательское средство удаления, это, вероятно, нет). Если нет, вы можете использовать emplace_back
(при условии, что QList имеет интерфейс, аналогичный std :: list).
Примерно так:
rmgControllers.clear();
for (...)
{
// emplace default-constructed object at end of list
rmgControllers.emplace_back();
// reference added controller
RmgController& rmg = rmgControllers.back();
//fill the object with values from json
rmg.fillWithValues();
}
Если RmgController
поддерживает движениеВы можете просто переместить его в конец списка.
rmgControllers.clear();
for (...)
{
// create controller
auto rmg = RmgController();
//fill the object with values from json
rmg.fillWithValues();
// move new controller to end of list
rmgControllers.push_back(std::move(rmg));
}