placement new 不能这样用吗?
#include <iostream>
using namespace std;
class Foo{
public:
int i;
};
int _tmain(int argc, _TCHAR* argv[])
{
char *pszSpace = new char( sizeof( Foo ) );
Foo *ptrFoo = new(pszSpace)Foo();
delete ptrFoo;
return 0;
}
VS2005为什么报错?
[解决办法]
char *pszSpace = new char( sizeof( Foo ) );
->
char *pszSpace = new char[ sizeof( Foo ) ];