gpt4 book ai didi

C++减少字符串内存使用

转载 作者:行者123 更新时间:2023-11-28 05:55:31 25 4
gpt4 key购买 nike

我需要存储很多长度固定的短字符串。我注意到一个字符串对象分配 8 个字节,即使它包含一些字符,这让我遇到了内存问题。

有没有办法告诉 C++ 它应该只为字符串分配 n(常量)字节?还是我必须使用字符数组?

最佳答案

由于字符串的大小不变,您可能需要分配一个二维数组(每一行都是一个字符串)。在初始化时分配一次数组。这是最紧凑的形式。

如果字符串的数量未知,请考虑使用字符数组的std::vector。我建议在创建 vector 时保留较大的大小,以减少数量或重新分配。

此外,问问自己在程序运行期间是否需要将字符串存储在内存中。您会访问(搜索)它们吗?数据可以放在文件或数据库中吗?

关于C++减少字符串内存使用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34243018/

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