c++ تمويل هل هناك على أي حال لمعرفة ما لم يتم تضمين ملف رأس المحكمة الخاصة بلبنان مباشرة؟



المحكمة الدولية الخاصة بلبنان عياش (2)

الأداة الوحيدة التي أعرفها ... هي المترجم نفسه.

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

يستخدم منتجنا C ++ كلغة برمجة. إحدى القضايا المزعجة لاستخدام C ++ ستل هو أننا ننسى لتضمين ملفات الرأس الضرورية، لأنه قد تم تضمين الملف في رأس ستل الأخرى، يمر البناء. فمثلا،

في منصة ماك باستخدام كسكودي، إذا كنت تستخدم std::auto_ptr دون تضمين memory.h ولكن تشمل iostream.h ، وبناء سيمر، لكنها سوف تفشل في منصة أندرويد.

ولكن لا أريد نقل رمز لالروبوت لفحص بناء لكل تغيير رمز ارتكاب. لذلك، هل هناك على أي حال لتجنب هذه المشكلة؟

تحرير 1: وأنا أعلم أن أفضل حل هو أن لا ننسى تشمل رأس. ولكن المطورين يخطئون. هل هناك أي أداة للمساعدة في التحقق من ذلك؟

تحرير 2: طبقات لا الحل المثالي، لذلك سوف تستخدم فيم النصي للتحقق من ذلك في بلدي محرر، والحل هو مماثل ل https://github.com/vim-scripts/vim-cpp-auto-include/blob/master/ ftplugin / cpp_auto_include.vim


Answer #1

يمكنك استخدام ملف common_includes.h يتضمن كافة الملفات الضرورية هناك، common_includes.h ذلك الملف في كل مكان تحتاج إليه. وهذا من شأنه تبسيط الوضع، وسوف تساعد على نسيان لتشمل بعض الملفات. على الأقل سوف ننسى مرة واحدة فقط :).





stl