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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
virtuos553
48 / 3 / 1
Регистрация: 18.12.2012
Сообщений: 247
Записей в блоге: 1
#1

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

08.03.2014, 14:55. Просмотров 360. Ответов 4
Метки нет (Все метки)

Например есть вектор из 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++ Л1 списки. Как вставить элемент перед последним?
C++ Дан двумерный массив размером 5 * 8, заполненный случайным образом. Вставить перед всеми строками, первый элемент которых делится на3,вставить....
Перед каждым положительным элемент массива вставить элемент с нулевым значением C++
C++ Удалить первый положительный элемент массива; вставить новый элемент перед первым максимальным элементом
C++ Перед указанным элементом массива вставить новый элемент
C++ Вставить перед каждой серией минимальный элемент массива
Вставить перед каждой серией минимальный элемент массива C++
C++ Вставить в вектор новый элемент перед элементом с заданным индексом
Вставить перед каждой серией массива элемент с нулевым значением. C++
C++ Перед каждым положительным элементом массива вставить нулевой элемент
Перед элементом массива с порядковым номером K вставить новый элемент C++
Вставить новый элемент, перед всеми чётными элементами одномерного массива C++

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
recoder
130 / 130 / 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
48 / 3 / 1
Регистрация: 18.12.2012
Сообщений: 247
Записей в блоге: 1
08.03.2014, 15:10  [ТС]     Как в векторе вставить элемент перед данным #3
что такое auto?
recoder
130 / 130 / 28
Регистрация: 13.09.2013
Сообщений: 260
Записей в блоге: 2
08.03.2014, 15:16     Как в векторе вставить элемент перед данным #4
Это в C++11 компилятор сам определяет тип.
DrOffset
6917 / 4110 / 939
Регистрация: 30.01.2014
Сообщений: 6,905
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     Как в векторе вставить элемент перед данным
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru