Мне было интересно, если кто-нибудь встретил такую систему, как QSharedDataPointer и QSharedData для неявного обмена, что подходит для использования с идиомой pimpl, в альтернативной библиотеке Qt?
Я пытался избежать добавления дополнительных зависимостей в мою систему, если это возможно, и просто интересно, какие могут быть мои варианты.
Аналогичную систему можно найти здесь. Основное различие заключается в том, что boost :: shared_ptr используется для того, чтобы иметь ссылку на общий общий указатель вместо того, чтобы требовать, чтобы объект наследовался от класса, который предоставляет функцию подсчета ссылок.
Хотя я еще не пробовал, он может иметь несколько более высокие накладные расходы по сравнению с qSharedDataPointer из-за разыменования boost :: shared_ptr, однако стоимость является компромиссом против этого более удобного использования.