في التحديث الأخير لملف main.cpp، قمت بتقديم توجيه المعالج المسبق التالي:
#define NOMINMAX #include#include
يسمح لك هذا الإجراء باستخدام وظائف std::max وstd::min داخل التعليمات البرمجية الخاصة بك. ومع ذلك، فإن المحاولات اللاحقة لاستخدام هذه الوظائف في ملفات أخرى تؤدي إلى أخطاء مثل:
خطأ C2589: '(' : رمز مميز غير قانوني على الجانب الأيمن من '::' خطأ C2059: خطأ في بناء الجملة: '::'error C2589: '(' : illegal token on right side of '::' error C2059: syntax error : '::'على الرغم من محاولات تعريف NOMINMAX في هذه الملفات الإضافية، إلا أن المشكلة لا تزال قائمة.
تكمن المشكلة في حقيقة أن NOMINMAX يحدد الأسماء المستعارة لـ Windows min والحد الأقصى من وحدات الماكرو، مع الكتابة فوق إصدارات C القياسية التي توفرها
(std::min)(x, y);يتجنب هذا الأسلوب استدعاء الوظيفة- مثل وحدات الماكرو، مما يسمح بتطبيق إصدارات C القياسية.
تنصل: جميع الموارد المقدمة هي جزئيًا من الإنترنت. إذا كان هناك أي انتهاك لحقوق الطبع والنشر الخاصة بك أو الحقوق والمصالح الأخرى، فيرجى توضيح الأسباب التفصيلية وتقديم دليل على حقوق الطبع والنشر أو الحقوق والمصالح ثم إرسالها إلى البريد الإلكتروني: [email protected]. سوف نتعامل مع الأمر لك في أقرب وقت ممكن.
Copyright© 2022 湘ICP备2022001581号-3