栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > C/C++/C#

c++ allocator

C/C++/C# 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

c++ allocator

#include 
#include 
#include 
#include 


// g++ allocator_traits_test.cpp -std=c++11 -fPIC -Ofast -D_GLIBCXX_USE_CXX11_ABI=0 -o allocator_traits_test

template 
struct custom_allocator {
  typedef T value_type;
  custom_allocator() noexcept {}
  template  custom_allocator (const custom_allocator&) noexcept {}
  T* allocate (std::size_t n) { return static_cast(::operator new(n*sizeof(T))); }
  void deallocate (T* p, std::size_t n) { ::operator delete(p); }
};

typedef std::allocator_traits>::rebind_alloc other_allcator;

template 
constexpr bool operator== (const custom_allocator&, const custom_allocator&) noexcept
{return true;}

template 
constexpr bool operator!= (const custom_allocator&, const custom_allocator&) noexcept
{return false;}

int main () {
  std::vector foo = {10,20,30};
  for (auto x: foo) std::cout << x << " ";
  std::cout << 'n';
  return 0;
}
转载请注明:文章转载自 www.mshxw.com
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号