I am using a primitive type as follows:
engine->RegisterObjectType("myInt", sizeof(int), asOBJ_VALUE | asOBJ_POD | asOBJ_APP_PRIMITIVE ); assert( err >= 0 );
The Application can modify and use operators on this value, however the script cannot. Something as simple as the following will fail.
myInt test;
test = 0;
I receive the error "Can't implicitly convert from 'const uint' to 'myInt'." Since this is a primitive datatype I was under the assumption that I did not need to do anything specific to use these. What am I doing wrong?
Comparing primitive types?
asOBJ_APP_PRIMITIVE just tells AngelScript that it can treat the type as a primitive in native calling conventions, i.e. when passing the type to application registered functions.
In order to support assignment or comparisons with this type against other types you need to register the appropriate methods, for example, opAssign, and opCmp.
Regards,
Andreas
In order to support assignment or comparisons with this type against other types you need to register the appropriate methods, for example, opAssign, and opCmp.
Regards,
Andreas
AngelCode.com - game development and more - Reference DB - game developer references
AngelScript - free scripting library - BMFont - free bitmap font generator - Tower - free puzzle game
This topic is closed to new replies.
Advertisement
Popular Topics
Advertisement