LINUX.ORG.RU

История изменений

Исправление Dudraug, (текущая версия) :

так просто

      std::vector<int> f(){
          return y;
      }

      const std::vector<int>& f(){
          return y;
      }

Первый вариант - создание копии вектора, но копия независима от того что в объекте хранится. Второй - ссылка, никакого создание доп. объектов, но если изменится вектор в классе, то вектор по этой ссылке изменится (так как она ссылается на тот же класс). С++11 тут вообще не причем, это старый добрый с++ оригинальный.

Исходная версия Dudraug, :

так просто

      std::vector<int> f(){
          return y;
      }

      const std::vector<int>& f(){
          return y;
      }

А так ссылка. Первый вариант - создание копии вектора, но копия независима от того что в объекте хранится. Второй - ссылка, никакого создание доп. объектов, но если изменится вектор в классе, то вектор по этой ссылке изменится (так как она ссылается на тот же класс). С++11 тут вообще не причем, это старый добрый с++ оригинальный.