0 / 0 / 0
Регистрация: 02.12.2016
Сообщений: 27
1

Изменение конструкции "vector<int> name(const vector<int>& v)"

04.06.2018, 13:00. Показов 2837. Ответов 5
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Здравствуйте, можете подсказать каким образом можно изменить конструкцию vector<int> name(const vector<int>&?

пробую вот так:

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
#include<iostream>
#include<vector>
 
using namespace std;
 
 vector<int> name(const vector<int>& v){
     vector<int> n;
    for (int i=v.size()-1; i>=0; --i){
        n.push_back(v[i]);
    }
    return n;
}
 
int main(){
    vector<int> v = {1, 7, 5, 9, 2,};
    name (v);
    for (int j=0; j<=v.size()-1; ++j){
        cout << v[j] << endl;
    }
    return 0;
}
может все правильно но не правильно сделан вывод? вывод выдает без изменений.
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
04.06.2018, 13:00
Ответы с готовыми решениями:

Нюансы синтаксиса: что значит запись const vector<int>&a и vector<int>&a при передаче в функцию vector<int>sort?
Увидел запись const vector&lt;int&gt;&amp;a при передаче в функцию и хотелось бы понять её значение и как она...

Error LNK2019: unresolved external symbol "public: __thiscall Vector<int>::Vector<int>(int,int,int)" (?0?$Vec
Вот есть заголовочный файл // Заголовочный файл Vector.h #ifndef VECTOR_H #define VECTOR_H ...

error LNK2019: ссылка на неразрешенный внешний символ "public: __thiscall Vector<int>::Vector<int>(void)" (?0?$Vector@H@@QAE@XZ) в функции _main
//Vector.h #include &lt;iostream&gt; #include &lt;Windows.h&gt; #include &lt;climits&gt; #include &lt;vector&gt;...

Как можно увеличить размер вектора, который является элементом вектора vector<vector<int>>arr(n, vector <int>)
Написал программу, которая создает вектор 'а' векторов 'b', вектора 'b' содержат 2 числа. Стало...

5
Эксперт С++
8738 / 4316 / 960
Регистрация: 15.11.2014
Сообщений: 9,760
04.06.2018, 13:05 2
Цитата Сообщение от ilyatr Посмотреть сообщение
каким образом можно изменить
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
#include <algorithm>
#include <iostream>
#include <vector>
 
using namespace std;
 
void name(vector<int>& v)
{
    reverse(v.begin(), v.end());
}
 
int main()
{
    vector<int> v = {1, 7, 5, 9, 2,};
    
    name(v);
    
    for (const auto& el: v)
        cout << el << endl;
}
0
Комп_Оратор)
Эксперт по математике/физике
8935 / 4690 / 628
Регистрация: 04.12.2011
Сообщений: 13,960
Записей в блоге: 16
04.06.2018, 13:25 3
Лучший ответ Сообщение было отмечено ilyatr как решение

Решение

Вы печатаете оригинал.
C++
1
2
3
4
5
vector<int> v = {1, 7, 5, 9, 2,};
    vector<int> vv = name (v);
    for (int j=0; j<=vv.size()-1; ++j){
        cout << vv[j] << endl;
    }
1
0 / 0 / 0
Регистрация: 02.12.2016
Сообщений: 27
07.06.2018, 10:48  [ТС] 4
Цитата Сообщение от hoggy Посмотреть сообщение
void name(vector<int>& v)
суть была в изменении именно конструкции
Цитата Сообщение от ilyatr Посмотреть сообщение
vector<int> name(const vector<int>& v){
Цитата Сообщение от IGPIGP Посмотреть сообщение
vector<int> vv = name (v);
Спасибо! не подумал что результат выполнения нужно куда то записать.
0
Комп_Оратор)
Эксперт по математике/физике
8935 / 4690 / 628
Регистрация: 04.12.2011
Сообщений: 13,960
Записей в блоге: 16
07.06.2018, 11:31 5
Цитата Сообщение от ilyatr Посмотреть сообщение
Спасибо! не подумал что результат выполнения нужно куда то записать.
Не за что. Обратите внимание на вариант hoggy. Избежать копирования можно лишь передав не константную ссылку. В этом случае исходный вектор изменится, конечно. Но скорее всего именно это Вам и нужно.
0
0 / 0 / 0
Регистрация: 02.12.2016
Сообщений: 27
07.06.2018, 11:43  [ТС] 6
Цитата Сообщение от IGPIGP Посмотреть сообщение
Но скорее всего именно это Вам и нужно.
не, там именно такая конструкция. вариант hoggy был в других заданиях.
0
07.06.2018, 11:43
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
07.06.2018, 11:43
Помогаю со студенческими работами здесь

Нюансы синтаксиса: что означает запись vector<int*> a и vector <int>*a ?
Часто встречается вот такая запись: vector&lt;int&gt; a; это понятно что. Массив объектов int А вот...

Что означает vector< vector<int> > a(n) в int main
#include &lt;iostream&gt; #include &lt;vector&gt; using namespace std; int max(vector&lt; vector&lt;int&gt; &gt;&amp; a, int...

set_difference(vector<pair<int,int>>, vector<int>>
Мне бы провести эту операцию по первому значению pair. Это реально сделать через STL или придется...

Почему vector v{vector{1, 2} }; имеет тип vector<int>
std::vector v{std::vector{1, 2} }; Почему v выводиться как vector&lt;int&gt;

Char const* str to vector<unsigned int>
Добрый день! На visual studio 2012 не работает код: char const* str{ &quot;1 2 4 12 5123&quot; };...

Цикл: Создайте класс Matrix на базе вектора vector<vector<int>>.
Создайте класс Matrix на базе вектора vector&lt;vector&lt;int&gt;&gt;. Определите операторную функцию ostream\&amp;...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2023, CyberForum.ru