object.c

来自「FinC is Fava in C! A C-like syntax langu」· C语言 代码 · 共 43 行

C
43
字号
#include <object.h>Object* object_new (){	Object* self;	self = (Object*)mem_new(sizeof(Object));	object_init_object (OBJECT (self), object_destroy);	return self;}void object_destroy (Object* self){	mem_destroy (self);}void object_init_object (Object* self, ObjectDestroy p_destroy){	self->refcount = 1;	self->destroy = p_destroy;}Object* object_addref (Object* self){	if (!self) return NULL;	self->refcount++;	return self;}void object_unref (Object* self){	if (!self||self->refcount==0) return;	self->refcount--;	if (self->refcount <= 0)	{		(*self->destroy) (self);		self = NULL;	}}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?