Advertisement

Static / Type members?

Started by January 30, 2013 04:37 PM
0 comments, last by WitchLord 11 years, 9 months ago

I've recently gotten in the habit of using static member constants and the named constructor idiom to improve readability of my C++ code. For example:


Vector3 vec = Vector3::Up;
Matrix mat = Matrix::Identity;

if (getPosition() == Vector3::Zero)
{
}

I think the addition of constant class members to Angelscript would be really helpful. Something like this -- in C++:


class MyCType
{
    ...
    static const int MyConst;
};

...

engine->RegisterTypeProperty("MyType", "int myConst", &MyCType::myConst); // just like RegisterGlobalProperty

...and in Angelscript:


int foo = MyType.myConst; // properties accessed through the type, not an instance

Is there any chance we'll see a feature like this? I'd be willing to try and implement it myself, but I have no idea where to start.

Static class members and constants are on my to-do list, but currently with a very low priority as it is really just syntactic sugar. They are after all nothing more than global variables and constants declared in the namespace of the class.

I haven't begun thinking about how I want these to be stored or registered in AngelScript, but it is quite possible the namespace feature will come in handy here, by simply allowing the class name to be used as namespace identifier too.

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