Apakah Pelaksanaan Penunjuk Pintar C yang tersedia?
C 03
-
std::auto_ptr: Kutipan sampah terhad, tidak boleh menyimpan tatasusunan yang diperuntukkan objects,不支持拷贝,已废弃。
-
std::auto_ptr_ref: Bukan penunjuk pintar, digunakan dengan std::auto_ptr untuk penyalinan dan tugasan.
C 11
-
std::unique_ptr: Menggantikan std::auto_ptr, prestasi yang dipertingkatkan, berfungsi dengan tatasusunan, boleh digunakan dalam bekas STL.
-
std::shared_ptr: Penunjuk pintar dikira rujukan, boleh dikongsi oleh berbilang pemilik, selamat untuk benang.
-
std::weak_ptr: Rujukan kepada objek yang dimiliki oleh std::shared_ptr, tidak menghalang pemadaman.
Boost
-
boost::shared_ptr: Shared-ptr patuh standard, mudah digunakan , overhed tinggi dalam sesetengahnya kes.
-
boost::weak_ptr: weak_ptr patuh standard, membenarkan rujukan bukan milik untuk boost::shared_ptr.
-
boost::scoped_ptr: Serupa dengan std::unique_ptr, kurang overhed daripada boost::shared_ptr, tidak boleh digunakan dalam bekas STL.
-
boost::intrusive_ptr: Penunjuk pintar boleh disesuaikan untuk mencipta kelas serasi penunjuk pintar anda sendiri.
-
boost::shared_array: Shared_ptr untuk tatasusunan, menyokong dinamik peruntukan tatasusunan dan pemadaman.
-
boost::scoped_array: Scoped_ptr untuk tatasusunan, tidak boleh disalin, tidak boleh digunakan dalam STL bekas.
Qt
-
QPointer: Penunjuk pintar yang lemah untuk QObject dan kelas terbitan, tidak menyediakan kuat penunjuk.
-
QSharedDataPointer: Penuding pintar yang kuat, memerlukan pengiraan rujukan manual, boleh mensubkelaskan QSharedData.
-
QExplicitlySharedDataPointer: Lebih banyak kawalan serupa dengan QPointer,SharedD habis menanggalkan.
-
QSharedPointer: Pengiraan rujukan atom, selamat benang, pemadaman boleh disesuaikan, overhed tinggi.
-
QWeakPointer: Penunjuk pintar yang lemah, digunakan dengan QSharedPointer untuk mengelakkan pekeliling rujukan.
-
QScopedPointer: Petunjuk pintar pemilik tunggal, kurang overhed daripada QSharedPointer.
Atas ialah kandungan terperinci Apakah Pelaksanaan Penunjuk Pintar C Wujud dan Bagaimanakah Ia Berbeza?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!