Rumah > Artikel > pembangunan bahagian belakang > Mengapa C Tidak Menetapkan Penunjuk secara Automatik kepada NULL Selepas Pemadaman?
Pembatalan Automatik Selepas Pemadaman: Mengapa Tidak?
Amalan menetapkan penunjuk secara automatik kepada NULL selepas melakukan operasi pemadaman telah menjadi topik perbahasan untuk pengaturcara. Ramai berpendapat bahawa langkah ini akan mengurangkan dengan ketara kejadian ranap sistem yang disebabkan oleh penunjuk tidak sah. Walau bagaimanapun, piawaian C tidak menggunakan pendekatan ini, membuatkan pengguna ingin tahu tentang sebab di sebalik keputusan ini.
Menurut Bjarne Stroustrup, pencipta C , terdapat beberapa faktor yang menyumbang kepada pengecualian pembatalan penunjuk automatik :
Prestasi Pertimbangan:
Memperkenalkan arahan tambahan untuk menolakkan penuding boleh memberi kesan kepada prestasi keseluruhan operasi pemadaman, terutamanya dalam senario di mana prestasi adalah kritikal.
Penunjuk Konst:
Petunjuk Const merujuk kepada lokasi memori yang tidak boleh diubah suai. Menetapkan penunjuk sedemikian kepada NULL secara automatik boleh membawa kepada tingkah laku yang tidak ditentukan, kerana mengubah suai kandungan objek const tidak dibenarkan.
Walau bagaimanapun, Stroustrup juga mengakui bahawa kebimbangan ini mungkin telah ditangani melalui pengendalian khusus penunjuk const.
Standard membenarkan operasi pemadaman pada rnilai (objek sementara), yang tidak boleh disifarkan keluar. Had teknikal yang dikenakan oleh bahasa itu sendiri merupakan satu lagi halangan kepada pembatalan penunjuk automatik.
Atas ialah kandungan terperinci Mengapa C Tidak Menetapkan Penunjuk secara Automatik kepada NULL Selepas Pemadaman?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!