Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Mengapakah Spesifikasi Pengecualian dalam Tandatangan Fungsi C Dianggap Amalan Buruk?

Mengapakah Spesifikasi Pengecualian dalam Tandatangan Fungsi C Dianggap Amalan Buruk?

Linda Hamilton
Linda Hamiltonasal
2024-11-01 03:34:02630semak imbas

Why are Exception Specifications in C   Function Signatures Considered Poor Practice?

Spesifikasi Pengecualian dalam Tandatangan Fungsi

Soalan:

Mengapa menggunakan "lempar" kata kunci dalam tandatangan fungsi dianggap sebagai amalan buruk dalam C ?

Jawapan:

Menggunakan kata kunci "buang" dalam tandatangan fungsi biasanya tidak digalakkan. Sebaliknya, adalah disyorkan untuk mengendalikan pengecualian dalam fungsi dan menyebarkannya melalui nilai pulangan atau kod ralat.

Spesifikasi pengecualian dalam tandatangan fungsi menentukan pengecualian yang boleh dilemparkan oleh fungsi. Walau bagaimanapun, pengkompil tidak boleh menguatkuasakan pengisytiharan ini. Ia disemak pada masa jalan, yang tidak diingini kerana implikasi prestasinya.

Selain itu, spesifikasi pengecualian tidak disokong dengan baik oleh banyak penyusun. Contohnya, Microsoft Visual C mengabaikan spesifikasi pengecualian, kecuali untuk "throw()", yang ditafsirkan sebagai jaminan bahawa tiada pengecualian akan dilemparkan. Ketidakkonsistenan ini menambah kepada masalah yang mungkin disebabkan oleh penggunaan spesifikasi pengecualian.

Atas ialah kandungan terperinci Mengapakah Spesifikasi Pengecualian dalam Tandatangan Fungsi C Dianggap Amalan Buruk?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
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