如果我写这段代码:
QSharedPointer<int> ptr(new int());
指向整数的引用数为1.
但是当我这样调用data()时:
QSharedPointer<int> ptr(new int());
int* ptr2 = ptr.data();
引用数量1或2是什么? 谢谢你的帮助。
答案 0 :(得分:4)
它不会改变。 QSharedPointer
仅与QSharedPointer
共享指针。它不会赢,也无法与原始指针共享。
外什么都不做如果没有其他QSharedPointer对象引用它,QSharedPointer将删除它超出范围时所持有的指针。
返回此对象引用的指针的值。
答案 1 :(得分:4)