我需要找到一个解决方法来解决在g ++中放置new的错误。我现在修复了gcc-4.3但我必须支持版本4.2和4.1。例如,以下代码编译时出现错误
“错误:没有匹配函数来调用'operator new(long unsigned int,void *&)”
template<class T, template<typename> class Alloc>
inline void* type_ctor()
{
Alloc<T> a; void* p = a.allocate(1);
new(p) T;
return p;
}
.....
type_ctor<A, NewAllocator >();
答案 0 :(得分:10)
要使用标准库展示位置new
,您必须#include <new>
。