[c++] فيسوال C ++ x64 إضافة مع تحمل


Answers

VS2010 وقد بنيت في دعم لتجميع وربط رمز مكتوب في التجمع وترجمتها ماسم (ml64.exe). لديك فقط للقفز من خلال بضعة الأطواق لتمكينه:

  • انقر بزر الماوس الأيمن فوق المشروع في إطار مستكشف الحلول، بناء التخصيصات، وضع علامة "ماسم".
  • مشروع + إضافة عنصر جديد، واختيار قالب ملف C ++ ولكن اسمه شيء.الاسم
  • تأكد من حصولك على هدف المنصة x64 للمشروع. بناء + مدير التكوين، حدد "x64" في السرد "منصة حل النشطة". إذا فقدت، حدد <New> واختر x64 من السرد الأول. إذا كان مفقودا سيكون لديك لإعادة تشغيل الإعداد وإضافة دعم للمترجمين 64 بت.

كتابة رمز التجميع باستخدام بناء الجملة ماسم، مرجع هنا . بداية سريعة البرنامج التعليمي هنا .

يبدو الهيكل العظمي لرمز التجميع كما يلي:

.CODE
PUBLIC Foo
Foo PROC
  ret                    ; TODO: make useful
Foo ENDP
END

ودعا من C ++ رمز مثل هذا:

extern "C" void Foo();

int main(int argc, char* argv[])
{
    Foo();
    return 0;
}

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

Question

لأنه لا يبدو أن هناك جوهري ل أدك وأنا لا يمكن استخدام المجمع مضمنة للعمارة x64 مع فيسوال C ++، ماذا أفعل إذا أريد أن أكتب وظيفة باستخدام إضافة مع تحمل ولكن تضمينه في مساحة اسم C ++؟

(محاكاة مع مشغلي المقارنة ليست خيارا، وهذا 256 ميغابت إضافة هو الأداء الحرج.)




Links