我想知道是否有人在 Qt 的替代库中遇到过像 QSharedDataPointer 和 QSharedData 这样的隐式共享系统,该系统适用于 pimpl 习惯用法?
如果可能的话,我一直在努力避免向我的系统添加额外的依赖项,我只是想知道我的选择可能是什么。
我想知道是否有人在 Qt 的替代库中遇到过像 QSharedDataPointer 和 QSharedData 这样的隐式共享系统,该系统适用于 pimpl 习惯用法?
如果可能的话,我一直在努力避免向我的系统添加额外的依赖项,我只是想知道我的选择可能是什么。
可以在此处找到类似的系统。主要区别在于 boost::shared_ptr 用于具有引用计数的共享指针,而不是要求对象从提供引用计数功能的提供的类继承。
虽然我还没有尝试过,但由于 boost::shared_ptr 取消引用,与 qSharedDataPointer 相比,它的开销可能会稍高一些,但是成本是与其更方便使用的权衡。