gpt4 book ai didi

C++ boost::multi_array 索引太大

转载 作者:塔克拉玛干 更新时间:2023-11-03 01:59:22 26 4
gpt4 key购买 nike

我正在使用二维 boost::multi_array 来存储自定义结构的对象。问题是我有大量的这些对象,所以我需要的数组索引超出了整数的范围。是否有可能将 long 用作多数组的索引,或者您对如何存储这么大的数据集并仍然保持以适当的速度访问它有任何其他建议吗?

谢谢!

最佳答案

official documentation声明索引类型未指定,但查看 repository , 可以看到最有可能的定义是 typedef std::ptrdiff_t index;

因此,如果您为 x86 32 位系统编译,无论如何您肯定会用完可寻址内存,因此索引大小的限制并不是您的真正问题。您唯一的选择是选择一个具有足够内存的系统,该系统必须是超过 2^32 字节的系统,因此必须是 64 位系统。 2^64 肯定足以表示您的多数组的维度。

关于C++ boost::multi_array 索引太大,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50735117/

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