/Zc:forScope (فرض توافق في للنطاق تكرار حلقي)

Used to implement standard C++ behavior for for loops with Microsoft extensions (/Ze). /Zc:forScopeهو على بشكل افتراضي.

/Zc:forScope[-]

ملاحظات

سلوك القياسي هو لإعلام forمهيئ لحلقة انتقال خارج نطاق بعد forالحلقة. تحت /Za،/Ze (اللغة يعطل ملحقات)، forيبقى مهيئ لحلقة في نطاق حتى محلي نطاق اﻷطراف.

سيتم ترجمة تعليمات برمجية التالية تحت /Zeولكن ليس ضمن /Za:

// zc_forScope.cpp
// compile with: /Zc:forScope- /Za
// C2065 expected
int main() {
   // Uncomment the following line to resolve.
   // int i;
   for (int i =0; i < 1; i++)
      ;
   i = 20;   // i has already gone out of scope under /Za
}

إذا كنت تستخدم /Zc:forScope-، ستتلقى رسالة تحذير (إيقاف التشغيل بشكل افتراضي) إذا كان المتغير هو في النطاق نظراً لإعلان التي تم إجراؤها في نطاق السابقة. لتوضيح هذا، إزالة //حرفاً في رمز أعلاه إلى تعريف المتغير int i.

يمكنك تعديل سلوك وقت التشغيل /Zc:forScopeمع conformpragma.

إذا استخدمت /Zc:forScope-في مشروع مع ملف.pch exهوting /Zc:forScope-هو تجاهل (مع تحذير) وتستمر عملية التحويل البرمجي مع ملفات exهوting.pch. إذا كنت تريد إنشاء ملف.pch جديد، استخدم /Yc (إنشاء المترجمة مسبقاً ملف الرأس).

لمزيد من معلومات حول مسائل المطابقة مع Visual C + +، راجع Compatibility and Compliance Issues in Visual C++‎.

لتعيين خيار المحول البرمجي هذا في بيئة تطوير Visual Studio

  1. افتح مربع الحوار صفحات الخصائص للمشروع. للمزيد من التفاصيل ، راجع تعديل إعدادات المشروع.

  2. انقر فوق المجلد /C + + C.

  3. انقر فوق صفحة الخصائص اللغة.

  4. قم بتعديل توافق فرض في "نطاق تنفيذ تكرار حلقي مستمرة ل" خاصية .

إلى قم بتعيين هذا خيار المترجم برمجياً

راجع أيضًا:

المرجع

/Zc (المطابقة)

/Za،/Ze (اللغة يعطل ملحقات)