The QObjectListModel class provides a model that supplies objects to QML views. When using subclasses of QObjectListModelT, one can even achieve static type checking on the C++ side.
QObjectListModel provides a more powerful, but still easy to use, alternative to using QList<qobject*> lists as models for QML views. As a QAbstractListModel, it has the ability to automatically notify the view of specific changes to the list, such as adding or removing items. At the same time it provides QList-like convenience functions such as append, at, and removeAt for easily working with the model from C++. Even using iterator based operations (range based for loop, algorithm) are fully functional.