スタックに割り当てられた が破棄されると、モデル内のポインタが指しているオブジェクト (たとえば、次の例の/ポインタ)QStandardItemModel
はどうなりますか?item
item2
QStandardItem* item = new QStandardItem("test");
QStandardItem* item2 = new QStandardItem("test2");
QList<QStandardItem*> list;
list.append(item);
list.append(item2);
QStandardItemModel model;
model.addRow(list);
このコンテキストでは、私が正しく理解していれば、モデルの行は N 個の値で構成され、その行の各値は として表されQStandardItem
ます。これは、上記の「リスト」オブジェクトが 2 つの値 (列) を持つ 1 つの行であることを意味します。
model.setData()
これは、 を使用しmodel.setRowCount()
て手動で座標を追跡するよりも良いですか、悪いですか?
完全なコンテキストが必要な場合は、ここにあります。アイデアは、手動でQSqlQuery
結果をループし、行をチャンクでフェッチすることです。関連するメソッドは と呼ばれloadChunk
ます。
モデルがスタックに割り当てられている場合、モデルにロードされたアイテムの割り当て解除を何らかの形で管理する必要がありますかaddRow()
TLDR; モデルがスタックに割り当てられているときにモデルがメモリをリークしないようにする方法はありますが、ヒープ上のオブジェクトへのポインタがたくさん含まれていますか?