Object
public const class
{
#Count: int
}
struct ix_base_Object
{
ix_base_Object* (*delete)( ix_base_Object** self );
};
struct ix_base_Object_Ref
{};
#endif
class Object {
public:
static int Count;
Object();
~Object();
Constructors
public new()
{
#Count++
}
ix_base_Object* ix_base_Object_new( ix_base_Object* self )
{
if ( !self ) self = calloc( 1, ix_base_Object_sz() );
self->delete = ix_base_Object_delete;
Count++;
return self;
}
Object::Object()
{
Count++;
}
Destructors
public delete()
{
#Count--
}
ix_base_Object* ix_base_Object_delete( ix_base_Object** self )
{
if ( *self )
{
free( (void*) *self ); *self = NULL;
Count--;
}
return NULL;
}
Object::~Object()
{
Count--;
}
public static int Count()
{
return #Count;
}
int ix_base_Object_Count()
{
return Count;
}
}; // end class
} // end namespace
#endif