allocator类
header:#include<memory>
作用:将内存分配和对象构造分离
定义:内存分配方法,内存是原始的,未构造的
allocator类是一个模板类
例:std::allocator<std::string> alloc; //可以分配string的allocator对象
算法:
allocator<T> alloc
定义一个名为alloc的allocator对象,可以为类型为T的对象分配内存
alloc.allocate(n)分配n个原始,未构造的类型为T的对象 不是分配n个字节
alloc.deallocator(p,n)
释放p指向的n个大小的内存
1.p必须是allocate返回的指针
2.n必须是p创建时的大小
3.调用deallocate前,必须在调用destory
alloc.construct(p,args)在p所指的原始内存中构造类型为T,参数为args的对象
alloc.destory(p)对p指向的对象执行析构函数