0

I saw the following code somewhere. But I don't know the use of the single colon in the line

auto& it : v

Does this mean pass the address v to each it? How the for loop access each address in &v ?

#include <iostream>
#include <vector>

std::vector<int>& addOne(std::vector<int> &v) {
  for(auto& it : v) {
    it += 1;
  }
  return v;
}

int main() {
  
  std::vector<int> x = {12, -3, 6, 19};

  auto y = addOne(x);
  for (auto& it : y) {
    std::cout << it << ' ';
  }
  std::cout << std::endl;
  return 0;
}
Justin
  • 327
  • 3
  • 13

0 Answers0