Форум программистов, компьютерный форум CyberForum.ru

Как в векторе вставить элемент перед данным - C++

Восстановить пароль Регистрация
 
virtuos553
 Аватар для virtuos553
48 / 3 / 1
Регистрация: 18.12.2012
Сообщений: 247
Записей в блоге: 1
08.03.2014, 14:55     Как в векторе вставить элемент перед данным #1
Например есть вектор из 5 элементов :1,2,3,4,5
мне нужно вставить например число 6 перед 5 эллементом, чтобы было 1,2,3,4,6,5
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
08.03.2014, 14:55     Как в векторе вставить элемент перед данным
Посмотрите здесь:

C++ Дан двумерный массив размером 5 * 8, заполненный случайным образом. Вставить перед всеми строками, первый элемент которых делится на3,вставить....
Вставить перед каждой серией минимальный элемент массива C++
C++ Вставить перед каждой серией минимальный элемент массива
C++ Л1 списки. Как вставить элемент перед последним?
Вставить перед каждой серией массива элемент с нулевым значением. C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
recoder
 Аватар для recoder
129 / 129 / 28
Регистрация: 13.09.2013
Сообщений: 260
Записей в блоге: 2
08.03.2014, 15:07     Как в векторе вставить элемент перед данным #2
-std=c++11
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
// vector::emplace
#include <iostream>
#include <vector>
 
int main ()
{
    std::cout << "Enter size: ";
    int n;
    std::cin >> n;
  std::vector<int> myvector(n);
 
  for (int i = 0; i < n; i++)
    myvector[i] = i;
 
  auto it = myvector.emplace ( myvector.begin()+n-1, 100 );
 
  std::cout << "myvector contains:";
  for (auto& x: myvector)
    std::cout << ' ' << x;
  std::cout << '\n';
 
  std::cin.get();
  std::cin.get();
  return 0;
}
virtuos553
 Аватар для virtuos553
48 / 3 / 1
Регистрация: 18.12.2012
Сообщений: 247
Записей в блоге: 1
08.03.2014, 15:10  [ТС]     Как в векторе вставить элемент перед данным #3
что такое auto?
recoder
 Аватар для recoder
129 / 129 / 28
Регистрация: 13.09.2013
Сообщений: 260
Записей в блоге: 2
08.03.2014, 15:16     Как в векторе вставить элемент перед данным #4
Это в C++11 компилятор сам определяет тип.
DrOffset
6462 / 3836 / 887
Регистрация: 30.01.2014
Сообщений: 6,631
08.03.2014, 19:47     Как в векторе вставить элемент перед данным #5
virtuos553, может, раз есть нужда вставлять в начало, лучше сменить контейнер?
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
#include <deque>
 
int main()
{
    const int n = 10;
 
    std::deque<int> a(n);
 
    for(int i = 0; i < n; ++i)
    {
        a[i] = i + 1;
    }
    a.push_front(20); //вставит в начало
    a.push_back(21); //в конец
}
Yandex
Объявления
08.03.2014, 19:47     Как в векторе вставить элемент перед данным
Ответ Создать тему
Опции темы

Текущее время: 16:11. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru