Здесь, когда мы сравниваем if (vc [i] == vc1 [i]), который является массивом вектора. на самом деле, что это значение, которое сравнивается, - PullRequest
0 голосов
/ 28 января 2020
int ismirror(vector<ll>vc[],vector<ll>vc1[],ll n){
  for(ll i=0;i<n;i++){
      reverse(vc[i].begin(),vc[i].end());
  }
  for(ll i=0;i<n;i++){
      if(vc[i]==vc1[i]){
         // cout<<vc[i]<<endl;      
          continue;
      }
}}

, но когда мы пытаемся напечатать vc [i] , возникает ошибка компиляции. Спасибо

1 Ответ

4 голосов
/ 28 января 2020

Оба vc[i] и vc1[i] являются std::vector экземплярами.

vc[i] == vc1[i] вызывает operator== на std::vector. Это сравнивает true, если векторы имеют одинаковое количество элементов и все элементы равны (обратите внимание, что емкость векторов может быть разной).

std::ostream не делает ' Для std::vector имеется соответствующая перегрузка <<, поэтому сборка вашего cout не удалась.

Ссылка: https://en.cppreference.com/w/cpp/container/vector/operator_cmp

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...