天天看点

Physx使用的问题

1.提示NxUserAllocator::_malloc_dbg重声明,重定义了

这种问题的发生是由于我们的工程使用了_CRTDBG_MAP_ALLOC用来进行内存溢出检测。

该定义宏会导致在crtdbg.h中定义如下宏

#define malloc(s) _malloc_dbg(s, _NORMAL_BLOCK, __FILE__, __LINE__)

该宏会把malloc(size_t s)和malloc(size_t s, NxMemoryType type)都扩展成_malloc_dbg(s, _NORMAL_BLOCK, __FILE__, __LINE__)。导致重定义。

解决办法:

在定义_CRTDBG_MAP_ALLOC之后,#include<crtdbg.h>之前,#include "NxPhysics.h"

继续阅读