Adakah Memeriksa Penunjuk Null dalam Fungsi Ahli Perlu dan Boleh Dipercayai dalam Aplikasi Berbilang Benang C?

Linda Hamilton
Lepaskan: 2024-11-02 15:24:02
asal
195 orang telah melayarinya

Is Checking for Null Pointers in Member Functions Necessary and Reliable in C   Multithreaded Applications?

Menyemak Petunjuk Null dalam Fungsi Ahli

Soalan:

Dalam aplikasi berbilang benang, pertimbangkan kelas dengan fungsi ahli. Adakah sah untuk menyemak sama ada penuding ini adalah nullptr dalam fungsi dan mengembalikan kod ralat jika ia?

Jawapan:

Dalam standard C , mengakses null penunjuk ialah tingkah laku yang tidak ditentukan. Oleh itu, menyemak sama ada ini nullptr dan mengembalikan kod ralat tidak diperlukan dan boleh membawa kepada tingkah laku bukan standard.

Pertimbangan Tambahan:

  • Sesetengah pelaksanaan , seperti VC dan MFC, membenarkan ini disemak untuk nullptr. Walau bagaimanapun, pelaksanaan sedemikian adalah bukan standard dan boleh membawa kepada kod yang tidak boleh dipercayai.
  • Memasukkan semakan sedemikian mungkin berguna untuk tujuan nyahpepijat, tetapi pernyataan tegas adalah pilihan yang lebih sesuai untuk ini.
  • Menyemak sama ada ini nullptr tidak semestinya menunjukkan bahawa objek telah dipadamkan. Ini hanya boleh bermakna bahawa penunjuk nol telah digunakan untuk memanggil kaedah atau mendapatkan rujukan ini.

Atas ialah kandungan terperinci Adakah Memeriksa Penunjuk Null dalam Fungsi Ahli Perlu dan Boleh Dipercayai dalam Aplikasi Berbilang Benang C?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan
Tentang kita Penafian Sitemap
Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!