关于 delete 仍是 delete [ ]
关于 delete还是 delete [ ] ?SomeClass* p_sc reinterpret_castSomeClass* (new char[size])用: dele
关于 delete 还是 delete [ ] ?
SomeClass* p_sc = reinterpret_cast<SomeClass*> (new char[size]);
用: delete [] p_sc; 还是 delete p_sc; ??
[解决办法]
不管是 delete [] p_sc; 还是delete p_sc; 都是错的
char pch = p_sc;
delete[] pch;
[解决办法]
嗯 这里是我疏忽了
应该是char* 你需要注意的是 new char[size]得到是 char* 不是 char**
[解决办法]delete[] reinterpret_cast<char*>(p_sc);
如果没有自定义的构造析构的话那干啥还要绕这么大圈子。直接new SomeClass()啊。编译器说是会生成默认构造函数,但也不要忘了还有空函数优化。
[解决办法]delete [](char *) p_sc;