QSharedPointer
关于如何将对象用作方法参数或方法的返回值,是否有任何好的做法或规定?
按价值:
LMNode::setParent(QSharedPointer<LMNode> parent)
{
this->parent = parent;
}
QSharedPointer<LMNode> LMNode::getParent()
{
return this->parent;
}
或更好的参考:
LMNode::setParent(const QSharedPointer<LMNode>& parent)
{
this->parent = parent;
}
const QSharedPointer<LMNode>& LMNode::getParent()
{
return this->parent;
}
当然,在第二个版本中,我避免了引用计数器的增加和QSharedPointer
对象的更改。但是有没有严格的方法我必须怎么做?