28 std::list<char*> held_ptrs;
40 csizes, vsizes, held_ptrs);
42 catch(std::exception& e){
48 auto h = held_ptrs.begin();
49 auto c =
cptrs.begin();
50 for(;
h != held_ptrs.end() && c !=
cptrs.end();){
58 std::list<size_t> sizes, std::list<size_t> vsizes, std::list<char* >& ptrl)
64 throw std::bad_alloc();
66 while(uintptr_t(v) % al){
69 throw std::bad_alloc();
72 size_t cur_size = sizes.front()*vsizes.front();
75 ptrl.push_back((
char*)v);
77 _create(al, v, en, sizes, vsizes, ptrl);