/Gd،/Gr،/Gz (مصطلح الاتصال)

هذه خيارات تحديد الترتيب في أي دالة الوسيطات دفع إلى المكدس؛ ما إذا كان الطالب دالة أو دالة تسمى بإزالة الوسيطات من المكدس في إنهاء المكالمة؛ اصطلاح decorating-اسم المحول البرمجي يستخدم لتعريف الدالات الفردية.

/Gd
/Gr
/Gz

ملاحظات

ملاحظة

هذه الخيارات المترجم متوفرة فقط في برنامج التحويل البرمجي استهداف x86؛ لا تتوفر هذه الخيارات المترجم في compilers استهداف x64أو Itanium.

/Gd، إعداد الافتراضي، يقوم بتعيين__cdeclاصطلاح لكافة الدالات عضو C + + باستثناء وظائف و الدالات التي تم وضع علامة__stdcallأو__fastcall.

/Grتعيين__fastcall اصطلاح لكافة وظائف فيما عدا sfunctions عضو C + + و الدالات التي تم وضع علامة__cdeclأو__stdcall. الجميع __fastcall يجب أن تحتوي الدالات النماذج الأولية.

/Gzتعيين__stdcallاصطلاح لكافة الدالات عضو C + + باستثناء وظائف و الدالات التي تم وضع علامة__cdeclأو__fastcall. الجميع __stdcallيجب أن تحتوي الدالات النماذج الأولية.

الدالات التي تأخذ متغير رقم وسيطات يجب أن يتم وضع علامة __cdecl.

/Gd,/Gr، و**/Gz**لا تتوافق مع/clr:آمن أو /clr:pure.

ملاحظة

ل x86 المعالجات، بواسطة الافتراضي، استخدم الدالات عضو C + + __thiscall.

الوظيفة خاصة بالعضو لكافة المعالجات، التي هو المعلم بشكل صريح ك __cdecl، __fastcall، أو __stdcallيستخدم المحدد اصطلاح الاستدعاء. عضو دالة التي تأخذ متغير يستخدم عدد الوسيطات دائماً __cdeclاستدعاء اصطلاح.

__cdecl مواصفات

ل C, __cdeclالتسمية اصطلاح يستخدم اسم دالة مسبوقة بعلامة ( _)؛ لا يوجد الحالة ترجمة هو تنفيذها. إلا إذا تم تعريفه ك extern"C"، استخدم دالات C + + مختلفة decorating على اسم نظام. لمزيد من المعلومات، راجع أسماء المزين.

__fastcall مواصفات

بعض __fastcall تمريره وسيطات دالة مسجلات (ل x86 معالجات ECX و EDX)، ودفع المتبقية إلى المكدس من اليمين يسار. انبثاق روتين تسمى الوسيطات التالية من مكدس قبل أن تقوم بإرجاع. بشكل عام، /Grإنقاص وقت التنفيذ.

ملاحظة

كن حذراً عند استخدام __fastcall اصطلاح لأي وظيفة المكتوبة في لغة تجميع مضمنة. قد تتعارض استخدامك للتسجيلات مع استخدم برنامج التحويل البرمجي.

ل C, __fastcallالتسمية اصطلاح يستخدم اسم دالة مسبوقة علامة ( @) متبوعاً بحجم وسيطات دالة في البايت. لا توجد ترجمة حالة تم. المحول البرمجي باستخدام القالب التالي اصطلاح التسمية:

@function_name@number

عند استخدام __fastcallالتسمية اصطلاح، تضمين استخدم القياسي الملفات. وإلا فستحصل المراجع خارجي التي لم يتم حلها.

__stdcall مواصفات

__stdcallدفع وسيطات دالة إلى المكدس من اليمين يسار، ويخرج دالة تسمى الوسيطات التالية من المكدس قبل إرجاع.

ل C, __stdcallالتسمية اصطلاح يستخدم اسم دالة مسبوقة بعلامة ( _) و متبوعاً علامة (@) و الحجم وسيطات دالة في البايت. لا توجد ترجمة حالة هو تنفيذه. المحول البرمجي باستخدام القالب التالي اصطلاح التسمية:

_functionname@number

x86 معينة

هذا خيار أي تأثير تشغيل زخرفة اسم C + + وظائف و دالات. ما لم يتم التصريح عن كـ extern"C"، C + + وظائف ووظائف استخدام آخر decorating على اسم نظام. لمزيد من المعلومات، راجع أسماء المزين.

ل المزيد المعلومات حول استدعاء اصطلاحات، راجع Calling Conventions.

إنهاء × 86 الخاصة

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

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

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

  3. خيارات متقدمة انقر خاصية الصفحة.

  4. تعديل خاصية اصطلاح الاتصال.

لتعيين هذا خيار المحول البرمجي برمجياً

راجع أيضًا:

المرجع

خيار المحول البرمجي

خيارات إعداد المترجم