我想使用模型存储自定义数据。为此,我对选择哪个项目模型进行子类化有点困惑。我需要澄清哪个是子类化的最佳模型?
QAbstractItemModel
比QStandardItemModel
有什么优势?
这取决于您的需求。 如果您只想存储自定义数据并且不想编写自己的模型逻辑,请使用
QStandardItemModel
。这是通用的,您可以将其用于自定义数据而无需子类化。
另一方面,如果您想编写自己的模型逻辑,请选择
QAbstractItemModel
。它是抽象类。这意味着,它没有实现任何行为,它只是一个“接口”。它告诉您模型应该实现哪些方法,因此它可以用作 Qt 中的其他 ItemModel 类。