今天我看到这个 C++ 代码从 EXE 中创建一个驻留在 DLL 中的类(加载 DLL 之后)
extern "C"
{
DLL_EXPORT MyClass *CreateClass()
{
static char classBuffer[sizeof(MyClass)];
return new ((void*)classBuffer)MyClass();
}
}
我不明白为什么在这里我们不简单地使用 new 运算符,而是首先声明该静态缓冲区,然后将其与类实例化一起使用。任何帮助表示赞赏