// Пример использования родной функции engine->RegisterGlobalFunction("void func_c(?&in)", asFUNCTION(func_c), asCALL_CDECL); void func_c(void *ref, int typeId) { // Что-то делаем с ссылкой // Тип ссылки определяем по типу id } // Пример использования общей функции engine->RegisterGlobalFunction("void func_g(?&in)", asFUNCTION(func_g), asCALL_GENERIC); void func_g(asIScriptGeneric *gen) { void *ref = gen->GetArgAddress(0); int typeId = gen->GetArgTypeId(0); func_c(ref, typeId); }
В настоящее время возможно использование только с глобальной функцией, конструктором и методами объекта. Она не может быть использована с операторами поведения и другими операторами.
Переменный тип не доступен внутри скрипта, поэтому он может быть использован только для регистрации функций приложения.