Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/arrays/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ 比较不同的载体_C++_Arrays_Vector_Comparison - Fatal编程技术网

C++ 比较不同的载体

C++ 比较不同的载体,c++,arrays,vector,comparison,C++,Arrays,Vector,Comparison,我正在尝试编写一些代码来逐元素比较向量。假设我有三个int向量: v1=1,2,3,4,5,6,7,8,9,10 v2=1,2,3,4,5,6,7,8,9,10 v3=1,2,3,4,5,6,7,8,9,10 我想逐元素比较这三个元素——比较v1[0],v2[0],v3[0]。然后是v1[1]、v2[1]、v3[1]等等。C++中如何可能?我在谷歌上找不到任何地方能做到这一点。也许我应该把向量做成一个2d数组,然后处理COL 谢谢, 本 试试这个: bool vectors_are_equal

我正在尝试编写一些代码来逐元素比较向量。假设我有三个int向量:

v1=1,2,3,4,5,6,7,8,9,10

v2=1,2,3,4,5,6,7,8,9,10

v3=1,2,3,4,5,6,7,8,9,10

我想逐元素比较这三个元素——比较v1[0],v2[0],v3[0]。然后是v1[1]、v2[1]、v3[1]等等。C++中如何可能?我在谷歌上找不到任何地方能做到这一点。也许我应该把向量做成一个2d数组,然后处理COL

谢谢, 本

试试这个:

bool vectors_are_equal = false;
const unsigned int size = v1.size();
for (unsigned int i = 0; i < size; ++i)
{
  if ((v1[i] == v2[i]) && (v2[i] == v3[i]))
  {
     continue;
  }
  else
  {
     break;
  }
}
if (i >= size)
{
  vectors_are_equal == true;
}
bool向量等于=false;
常量unsigned int size=v1.size();
for(无符号整数i=0;i=大小)
{
向量_等于==真;
}

托马斯·马修斯,您的代码无法编译。下面是一个工作示例:

bool areVectorsEqual(const std::vector<int>& v1, const std::vector<int>& v2, const std::vector<int>& v3) {
  if (v1.size() != v2.size() || v2.size() != v3.size()) {
    return false;
  }

  for (int i = 0; i < v1.size(); i++) {
    if (v1[i] != v2[i] || v2[i] != v3[i]) {
      return false;
    }
  }

  return true;
}
bool areVectorsEqual(const std::vector&v1,const std::vector&v2,const std::vector&v3){
如果(v1.size()!=v2.size()| v2.size()!=v3.size()){
返回false;
}
对于(int i=0;i

您可以对此进行改进,允许比较n个向量。

三方比较后需要做什么?比较很简单-
std::vector
s提供了
的一个实现,根据您对语言中其他事物通常如何比较的知识进行猜测。您所说的“比较向量”是什么意思?秩序重要吗?为什么一个简单的for循环不能满足您的需要呢?您基本上回答了自己的问题。逐元素比较,首先是元素0,然后是元素1,等等。我的问题是我不知道要提前比较多少个向量,但我想知道每个位置,所有向量中的值是否相同。