ما هو الفرق بين خطأ فادح وخطأ غير فادح؟


الاجابه 1:

هذا سوف يبدو دائريًا ، لكن: الأخطاء القاتلة قاتلة. كما هو الحال في ، كل ما كنت تحاول القيام به لا يمكن أن يستمر وهو ميت الآن. هذا ما يعنيه القاتل.

خطأ غير مميت يعني حدوث شيء سيء ، لكن يمكننا التعافي والمتابعة.

دعنا نستخدم السيارة كقياس:

  • الإطارات المسطحة هي أخطاء غير مميتة. لا يمكنك القيادة حتى تقوم بإصلاحه ، ولكن يمكنك وضعه في مكانه واستمراره حتى تقوم بتصحيح الإطار أو استبداله. تعتبر حوادث التصادم المباشرة أخطاء فادحة. سيارتك محطمة ، والسيارة الأخرى محطمة ، ولن تقود أي منهما مرة أخرى. وربما ، قتل واحد أو أكثر من ركاب السيارات. بوضوح ، قاتلة.

لذلك ... العودة إلى البرمجة.

إذا اتصلت malloc ورجعت NULL ، فهذا ليس بالضرورة قاتل. لا يمكنك تخصيص ذاكرة ، لكن قد تتمكن من المتابعة على أي حال. ربما يمكنك تحرير بعض الموارد الأخرى.

إذا كان لديك خطأ يفسد البيانات ويفقد عملك ، فهذا قاتل. لقد فعلت الشيء الخطأ ، وفقدت بياناتك ، وليس هناك استرداد.

الآن ، هذه ليست الاستخدامات الوحيدة "المميتة" و "غير المميتة" في سياق البرمجة. ولكن ، يجب أن يعطيك فكرة عن كيفية التفكير في الأمر.