berfungsi untuk pembersihan sewenang-wenangnya semasa penutupan? " />
Walaupun dijangka, std::shared_ptr boleh digunakan untuk melakukan pembersihan sewenang-wenangnya semasa penutupan, walaupun semasa menggunakan std::shared_ptr Taip Pemadaman Apabila shared_ptr dicipta, ia merangkum penunjuk yang dimiliki bersama-sama dengan fungsi pemadam tetapi boleh dikonfigurasikan secara berbeza melalui pembina Setelah pemusnahan shared_ptr, the pemadam tersimpan dipanggil, mencetuskan pembersihan objek. Untuk memahami pemadaman jenis, pertimbangkan contoh mudah berikut menggunakan std::function:template
Di sini, my_unique_ptr
std::shared_ptr dan Type Erasure
Penunjuk yang dikongsi juga menggunakan pemadaman jenis. Apabila menyalin atau membina shared_ptr secara lalai daripada yang lain, maklumat pemadam disimpan. Ini bermakna perkongsian_ptr
Mengikut piawaian C, tingkah laku ini dijamin. Pelaksanaan tidak boleh mengubah dalaman std::shared_ptr dengan cara yang akan memecahkan fungsi ini. Oleh itu, menggunakan std::shared_ptr
Atas ialah kandungan terperinci Bagaimanakah std::shared_ptr