1. 程式人生 > >C++ Placement new 編譯問題備忘

C++ Placement new 編譯問題備忘

VC6環境下,C++ Placement new直接就是語法錯誤,解決方法:

1.非MFC:

包含

#include <new>

合適的地方使用 Placement new

char c[] = "0123456789";
char *p = new(&c) char;

2.MFC(僅僅除錯版本下):

與非MFC不同的地方是

註釋掉

#ifdef _DEBUG
#define new DEBUG_NEW
#endif
主要代價是沒法檢查記憶體洩露。