将或(||)运算符应用于只有0和1的两个向量

Applying or(||) operator on two vectors containing only 0 and 1

本文关键字:向量 两个 应用于 运算符 将或      更新时间:2023-10-16

我有两个向量:a = {1,0,1,1},b = {0,1,1,1}。我如何在这两个上应用或操作员,以便我可以得到一个向量:C = {0,0,1,1}。

std::vector<int> C;
std::transform(A.begin(), A.end(), B.begin(),
    std::back_inserter(C), std::logical_and<int>());

您只需使用索引

循环浏览元素
#include <iostream>
#include <vector>
int main()
{
    std::vector<int> A = {1, 0, 1, 1};
    std::vector<int> B = {0, 1, 1, 1};
    std::vector<int> C(A.size());
    for (std::size_t i = 0; i < A.size(); ++i)
    {
        C[i] = A[i] && B[i];
    }
    for (auto value : C)
    {
        std::cout << value << " ";
    }
}