如何在连续内存中存储相同长度的字符串(字符串的数量可能不同,但每个字符串的长度相同)? 可能吗?
最佳答案
最简单的方法可能是,不要使用 std::string
, 使用 std::array<char, N>
对于字符串(其中 N
是常用长度,如果需要可以将 char
替换为 wchar
),然后将它们放入 std::vector
中:
typedef std::array<char, N> string_type;
typedef std::vector<string_type> contiguous_strings;
如果长度N
在编译时不知道(或者如果不知道上限)那么你将不得不做一些更复杂的事情。我想您会想要使用 boost 扁平容器。
关于c++ - 在连续内存中存储相同长度的字符串?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32493443/