gpt4 book ai didi

c++ - basic_string 专有分配器

转载 作者:行者123 更新时间:2023-11-30 01:52:35 30 4
gpt4 key购买 nike

我正在评估使用 basic_string 模板来实现一个类似字符串的对象,以便使用外部内存管理器进行分配。该内存管理器保持已分配内存的最大大小和当前大小(允许当前大小增加到最大大小)。为了避免冗余,我想将该数据用于字符串。

有没有人知道这是否可能以及在哪里可以找到详细说明?我已经知道可以提供专有分配器,但仅此而已。

最佳答案

当然可以。只需提供一个实现 std::allocator ( http://www.cplusplus.com/reference/memory/allocator/ ) 接口(interface)的自定义分配器。

然后:

typedef std::basic_string<
char, std::char_traits<char>, custom_allocator<char> >
custom_string;

但请注意,此字符串与 std::string 不兼容,您可能必须实现转换 custom_string <-> std::string。

关于c++ - basic_string 专有分配器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24354544/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com