比如
QSqlQuery query;
LANObject* lan = LanObject::DetectLANEnvironment();
if (nullptr != lan) {
MessageItem* item = nullptr;
if (lan->getID() == 0) {
// ...
if (!query.exec(SqlQueryLANMessageData)) {
return false;
}
lan->setID(query.value(0).toUInt());
// ...
}
item = new MessageItem;
item->setLANObject(lan);
list->appendMessage(item);
return item;
}
比如在上面的代码中,应为中间可能会返回,我不想每次返回前手动delete,所以使用MessageItem* item = nullptr;先设置为空,最后才new一个实例。请问这样即使是在中间返回了也不会造成内存泄漏吧?但之前好像看过空指针也会占用一个字节。