c++内存示例14内存域分配器适配器,中临时缓冲

Posted 周三石

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了c++内存示例14内存域分配器适配器,中临时缓冲相关的知识,希望对你有一定的参考价值。

#包含 <算法>
#包含 <io流>
#包含 <内存>
#包含 <串>
#包含 <步>

()
{
s[] = {"串", "1", "测试", "..."};
p = 取临时缓冲<>(4);
// 要求将 p.第一 传递给 中临时缓冲
// (当心提前退出和异常)

复制(s, s + p.第二,
原始存储步<*, >(p.第一));
// 要求单独销毁每个 p 中的 串
// (当心提前退出和异常)

复制(p.第一, p.第一 + p.第二,
出流步<>{输出, "\n"});

每一(p.第一, p.第一 + p.第二, [](& e) {
e.~基串<>();
});

::中临时缓冲(p.第一);
}

1
测试
...
<  T >
重绑定 {
域分配器适配器<
分配器特征<外部分配>:: 重绑定分配<T>,
内部分配...
> 其他;
};
#包含 <向量>
#包含 <域分配器>
#包含 <提升/进程间/管理共享内存.h++>
#包含 <提升/进程间/分配器/适应池.h++>
名字空间 bi = 提升::进程间;
< T> 分配 = bi::适应池<T,
bi::管理共享内存::段管理器>;
进内通行 = 向量<, 分配<>>;
进内通矩阵 = 向量<进内通行, 标::域分配器适配器<分配<进内通行>>>;
()
{
bi::管理共享内存 s(bi::仅创建, "示例", 65536);

// 在共享内存中创建 向量 的 向量
进内通矩阵 v(s.取段管理器());

// 对于所有这些附加项,内层 向量 从外层 向量 的 域分配器适配器
// 获得其分配器参数
v.调整(1); v[0].压后(1);
v.原后(2);
向量<> 本地行 = {1,2,3};
v.原后(本地行.开始(), 本地行.());

bi::共享内存对象::移除("示例");
}
消灭(p);
回收对象(p);


U* p = 分配对象<U>();
{
构造(p, 前向<构造器实参>(构造器实参)...);
} (...) {
回收对象(p);
;
}
p;


以上是关于c++内存示例14内存域分配器适配器,中临时缓冲的主要内容,如果未能解决你的问题,请参考以下文章

c++内存示例19共针,分配器

c++内存示例001对齐,坏弱针

自定义堆栈分配器中的 C++ 内存对齐

[侯捷 C++内存管理] 标准分配器实现

自定义C++ STL内存分配器

为啥 C++ 分配器中没有重新分配功能?