#include <iostream>
#include <memory>
#include <intsafe.h>
#if !defined(CPP)
struct WangLiangLiang
{
INT64 age;
WangLiangLiang()
{
}
~WangLiangLiang()
{
}
};
int main()
{
WangLiangLiang * pMemeoryCache = new WangLiangLiang();
pMemeoryCache->age = 33;
WangLiangLiang * pReal = new (pMemeoryCache) WangLiangLiang();
std::cout << pReal->age << std::endl;
pReal->~WangLiangLiang();
return 1;
}
#endif
最近在搞UE4的一些东西,厂子里的UE4 plugin.看到下面的代码,有一些迷糊,于是查了一下.上面的是测试用的代码.深表惭愧,干了好几年这东西都不知道,还是第一次见识到.貌似以前看书看过,不过确实没啥印象.
大意为在指定的预先分配好的内存上调用构造函数.好在我查了查,没有稀里糊涂.这样很好,能不断精进.
继续看...
FStaticMesh* StaticMesh = new(PrimitiveSceneInfo->StaticMeshes) FStaticMesh(
PrimitiveSceneInfo,
Mesh,
ScreenSize,
CurrentHitProxy ? CurrentHitProxy->Id : FHitProxyId()
);