كيفية التقاط خروج () في جزءا لا يتجزأ من وحدة C ++ من التعليمات البرمجية الثعبان؟

StackOverflow https://stackoverflow.com/questions/1439533

سؤال

وأنا التضمين ل++ مكتبة ج (ملزمة به مع SIP) في تطبيق الثعبان بلدي. تحت بعض circonstances (حالات الخطأ)، تستخدم هذه المكتبة الخروج ()، والذي يسبب لي تطبيق كامل للخروج. هل هناك طريقة للقبض على هذا الحدث، أو هل أنا بحاجة إلى تعديل مكتبة للتعامل مع حالات الخطأ بشكل مختلف؟

وشكرا جزيلا لك،

هل كانت مفيدة؟

المحلول

ويجب تعديل مصدر المكتبة. لا يوجد "معالجة الاستثناء" في C وexit() لا يرجع إلى رمز الدعوة تحت أي ظرف من الظروف.

نصائح أخرى

ويمكنك تجاوز مكتبة الربط مع LD_LIBRARY_PATH وجعل وظيفة الخروج الخاصة بك. يعمل بشكل جيد.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top