Pemadaman jenis dalam C merujuk kepada teknik menyembunyikan beberapa atau semua maklumat jenis berkenaan kelas, serupa dengan Boost.Any. Berikut ialah pelbagai jenis pendekatan pemadaman:
Fungsi maya ialah teknik klasik di mana anda mengabstrak pelaksanaan kelas di dalam hierarki kelas berasaskan antara muka. Pendekatan ini diterima pakai oleh banyak perpustakaan Boost, seperti Boost.Any dan Boost.Shared_ptr, untuk menyembunyikan jenis atau mekanisme deallocation.
Pilihan alternatif melibatkan penggunaan penunjuk fungsi dengan fungsi templat, sambil menyimpan objek sebenar dalam penunjuk lompang*. Boost.Function menggunakan teknik ini untuk menyembunyikan jenis sebenar functor.
Sebagai contoh, pendekatan GMan menggunakan templat untuk menyembunyikan jenis sebenar tanpa menggunakan fungsi maya atau kekosongan* manipulasi.
shared_ptr
Semua teknik pemadaman jenis dalam C menggunakan penunjuk fungsi dan penunjuk void* , dengan perbezaan utama adalah dalam penyediaan gula semantik.
Atas ialah kandungan terperinci Bagaimana C Boleh Mencapai Pemadaman Jenis: Perbandingan Teknik?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!