קישור קוד אסמבלי ל-++C

DecayCell

New member
קישור קוד אסמבלי ל-++C

אני רוצה לקשר קוד אסמבלי (בקובץ נפרד) לפונקציה שנמצאת בתוך מחלקה בקובץ ++C. איך ניתן לעשות את זה? איזה שם צריך לתת לפונקציה בקובץ האסמבלי בשביל שהלינקר ימצא אותה כמו שצריך?
 

DecayCell

New member
קפיץ-קפוץ בחזרה לעמוד הראשון...

 

vinney

Well-known member
נורא פשוט

שם מתחיל ב_, בתוכנית שלך אתה מצהיר את השם בלי ה_, וextern "C". כמובן, אתה צריך לטפל בהעברת פרמטרים Cית, והחזרת הערך, אני מניח שאתה יודע לעשות את זה?
 

DecayCell

New member
אפשרי לעשות את זה?

כלומר, ידעתי על האפשרות "לתפור" כך פונקציות C, אבל האם זה יעבוד גם כפונקציה שהיא חלק ממחלקה (אני מניח שלא אזדקק לזה, אבל ידע כללי לא מזיק -- זה יעבוד גם במקרים של שימוש בפולימורפיזם?)? [פשפשתי קצת, ואני מניח שבעזרת כלים כמו nm אני אוכל לגלות איך הקומפיילר קרא לפונקציה (זה יוצא שם ממש מכוער...), ואז לקרוא לתווית באסמבלי כך -- אבל זה נראה לי hack ממש מגעיל...]
 

vinney

Well-known member
אל תעשה

זה HACK יותר ממגעיל אם אתה רוצה לכתוב MEMBER באסמבלר תשתמש ב asm{}
 
למעלה