代码拉取完成,页面将自动刷新
#include"XClass.h"
#include"XVtable.h"
#include"XMemory.h"
#include"XString.h"
#include"XPrintf.h"
#include<string.h>
bool ArgIsNULL(const void* args/*参数数值*/, const char* argsName/*参数名字*/, const char* str/*附加参数*/, const char* funcName/*函数名字*/, const char* filePath/*所在文件路径*/, int line/*所在行号*/)
{
if (args == NULL)
{
XPrintf("%s\n参数:%s是NULL\t函数名:%s\n文件路径:%s\n正在编译文件的行号:%d\n", str, argsName, funcName, filePath, line);
return true;
}
return false;
}
void XClass_deinit_base(XClass* object)
{
if (ISNULL(object, "") || ISNULL(XClassGetVtable(object), ""))
return;
XClassGetVirtualFunc(object, EXClass_Deinit, void(*)(XClass*))(object);
}
void XClass_copy_base(XClass* object, const XClass* src)
{
if (ISNULL(src, "") || ISNULL(XClassGetVtable(src), ""))
return;
XClassGetVirtualFunc(src, EXClass_Copy, void(*)(XClass*,const XClass*))(object,src);
}
void XClass_move_base(XClass* object, XClass* src)
{
if (ISNULL(src, "") || ISNULL(XClassGetVtable(src), ""))
return;
XClassGetVirtualFunc(src, EXClass_Move, void(*)(XClass*, XClass*))(object,src);
}
void XClass_delete_base(XClass* object)
{
DeleteMethod free = Class_MemoryFree(object);
if (free)
{
XClass_deinit_base(object);
free(object);
}
else
{
XClass_deinit_base(object);
XMemory_free(object);
}
}
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。