1

我需要一些建议。我正在阅读一个具有这样输入的文件

001 100 110 000 ... ..

这些是连续的输入和输出对。

现在我需要阅读这些 1 和 0 以进行进一步处理。我需要一个像 input[0]= {0,0,1} input[1] = {1,1,0} ....对于所有输入的数组。我将对输入和输出对进行按位比较、异或或..等。我正在考虑创建一个类,以便在读取输入/输出后我可以创建该类的对象,其中所有必需的函数都将被重载。例如,在这种情况下,对象将是一个由 3 个元素组成的数组,并且仅包含 1 和 0。

现在的问题是,1 和 0 的数量可以变化。是否可以创建一个成员将是未定义大小的数组的类?或者有没有其他办法?

我是新来的。所以,我希望能得到一些帮助。

4

2 回答 2

2

使用std::std::string bitset和std::vector.

std::string bits = "001";
std::bitset<3> b(bits);

std::bitset已经为您提供了按位运算。

创建std::vector<std::bitset<3>>它们并与之合作。

于 2012-04-20T01:45:55.330 回答
1

使您的数据成员成为std::vector. 您可以使用push_back将元素添加到末尾,以及其他一些东西。可以像访问数组一样访问元素。那里有很多很好的参考资料。

更好的是,首先使用向量并重载运算符以获取两个向量。

于 2012-04-20T01:35:47.590 回答