سؤال

وأنا أستخدم مكتبة الكيمياء فليكس لتوليد خارج SWC من ملفات C. لدي مجموعة بايت (unsigned char buffer[size]) في ج-الطبقة التي أود العودة إلى طبقة أكشن باعتبارها ByteArray. هل يجب تكرار خلال مجموعة وصراحة استدعاء AS3_Set على كل عنصر أم أن هناك طريقة لمجرد العودة C مجموعة كاملة دفعة واحدة؟

هل كانت مفيدة؟

المحلول

ويمكن تحقيق ذلك عن طريق استخدام في AS3_ByteArray_writeBytes ظيفة API الخيمياء.

نصائح أخرى

في C، عند عودته من وظيفة التي دعا اليها فلاش، يعود المؤشر إلى C-مجموعة، مثل هذا:

int * myArray = malloc(100);
//populate array...
return AS3_Array("IntType", (int)myArray);

وبعد ذلك، في فلاش:

import cmodule.<c module name>.MemUser;
...
memory = new MemUser();
for (var i:int = 0; i<4;i++) { //getting a 4 uints array
    trace(memory._mru16(data[0] + i*4)); //data is the return value from C
}

هذه الوظائف للقراءة [إينتس] / تعوم / شار من ج-مجموعة (لا يمكنك فقط استخدام ByteArray.readInt ()، يتم تمثيل الأرقام في ج مختلفة)

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top