как эффективно передать элементы из одного вектора в другой
От: sci_reseacher  
Дата: 07.04.16 13:49
Оценка:
Уважаемые форумчане!

Как наиболее эффективно (правильно) выполнить передачу (копирование, перемещение ... ) значений из одного вектора x (внутри объекта некоторого класса) в другой вектор y или z, который находиться вне класса в С++11?



class A {
      std::vector<int> x;
public:
      A(){
          x.resize(5,10);
      }
      const std::vector<int> & f(){
          return x ;
      }

      void g(std::vector<int>::iterator beg){
           std::copy(x.begin(),x.end(),beg);
      }
};

int main(){
     A a;
     std::vector<int> y(5);
     std::vector<int> z(5);
     y = a.f();
     a.g(z.begin());
     for(auto elem: y) std::cout << elem << " ";
     for(auto elem: z) std::cout << elem << " ";
}
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.