gpt4 book ai didi

bitset 传递给函数的 C++ vector

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

我想在 C++ 中实现一个算法,它需要一个动态分配的巨大位集 vector (512x18,000,000 位 - 我有 16Gb 的 RAM)。

a) 这很好用

int nofBits=....(function read from db);
vector < bitset <nofBits> > flags;
flags.resize(512);

但是我如何将它(通过引用)传递给一个函数呢?请记住,我不知道编译时的 nofBits。

我可以用一个

vector<vector<bool> > 

但在内存使用方面会不会更糟?

最佳答案

我最近遇到了同样的问题,但是就像 std::array 一样,你需要在编译时知道位集的大小,因为它是一个模板参数。我找到了 boost::dynamic_bitset作为替代方案,它就像一个魅力。

关于bitset 传递给函数的 C++ vector ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17629210/

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