Original Post
Here's a nice way for declaring ctor/dtor functions if you need them for lots of classes (tested on VS.NET 2003 and VS6):
template<typename T>
void Constructor(T* o) {
new(o) T();
}
template<typename T>
void Destructor(T& o) {
o.~T();
}
Then, register them as your class' ctor/dtor:
pEngine->RegisterObjectBehaviour(
"MyClass",
asBEHAVE_CONSTRUCT,
"void Constructor()",
asFUNCTIONPR(Constructor, (MyClass*), void),
asCALL_CDECL_OBJLAST);
pEngine->RegisterObjectBehaviour(
"MyClass",
asBEHAVE_DESTRUCT,
"void Destructor()",
asFUNCTIONPR(Destructor, (MyClass&), void),
asCALL_CDECL_OBJLAST);
Have fun