【发布时间】:2017-10-01 14:29:57
【问题描述】:
我有两个向量: A = {1,0,1,1}, B = {0,1,1,1}。 我如何在这两个上应用或运算符,以便我可以得到一个向量: C = {0,0,1,1}。
【问题讨论】:
-
您说您想使用 OR,但您的预期输出建议使用 AND。它是哪一个?你尝试过什么?
-
听起来你想要一个 AND 运算符,而不是 OR 运算符...
1011V0111=1111vs1011^0111=0011 -
根据您的用例,
std::valarray可能值得考虑。 -
由于问题被标记为
vector,您似乎正在寻找动态位集。为此,应避免使用std::vector<int>和std::vector<bool>(由于后者的特殊性质)。如果您确实正在寻找动态位集,那么我在下面链接到的问答可能是此问题的适当副本。另请参阅std::bitset和boost::dynamic_bitset。