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

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

Войти
Регистрация
Восстановить пароль
 
 
Van111
209 / 188 / 4
Регистрация: 03.08.2011
Сообщений: 2,597
Записей в блоге: 12
#1

Затолкнуть в вектор aray - C++

28.03.2012, 21:10. Просмотров 701. Ответов 15
Метки нет (Все метки)

C++
1
2
3
4
5
6
7
8
const int size=3;
    int aray[size][3]={{1,1,0},{1,1,-1},{1,0,-1}};
 
    vector <int[3]> s;
    for(int i=0;i<size;i++)
    {
    s.push_back(?) мне надо затолкнуть в вектор aray как это сделать? 
    }
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
28.03.2012, 21:10
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Затолкнуть в вектор aray (C++):

Не хочет затолкнуть объект в List - C++
У меня есть класс TSettings. Я создал list в котором будут хранится объекты данного класса. Пытаюсь запихнуть в list выдает error: ...

Create an array of strings, find and delete duplicate lines and sort rows in the aray - C++
Write a program, the following operations: a) Create an array of strings. b) Find and delete duplicate lines. с) Sort rows in the...

Класс "вектор" с конструкторами, позволяющими создать нулевой вектор и вектор с произвольным числом элементов - C++
Привет! Задача следующая. Нужно реализовать класс &quot;вектор&quot; с конструкторами, которые позволяют создать нулевой вектор и вектор с...

Создать иерархию классов вектор и безопасный вектор с проверкой выхода за пределы - C++
Создать иерархию классов вектор и безопасный вектор с проверкой выхода за пределы. Безопасный вектор определяет переменные нижний и верхний...

Почему матрица на вектор умножается быстрее чем вектор на матрицу? - C++
Почему матрица на вектор умножается быстрее чем вектор на матрицу?

матрица на вектор, вроде правильно, а вектор на матрицу? посмотрите пожалуйста? - C++
#include &lt;iostream&gt; #include &lt;iomanip&gt; #include &lt;cstdlib&gt; #include &lt;ctime&gt; using namespace std; int main() { ...

15
Jupiter
Каратель
Эксперт С++
6556 / 3977 / 227
Регистрация: 26.03.2010
Сообщений: 9,273
Записей в блоге: 1
Завершенные тесты: 2
28.03.2012, 21:18 #2
Цитата Сообщение от Van111 Посмотреть сообщение
мне надо затолкнуть в вектор aray как это сделать?
никак
для массива нужна обертка
1
Van111
209 / 188 / 4
Регистрация: 03.08.2011
Сообщений: 2,597
Записей в блоге: 12
29.03.2012, 11:24  [ТС] #3
Цитата Сообщение от Jupiter Посмотреть сообщение
нужна обертка
а можно конкретнее пожалуйста
0
diagon
Higher
1929 / 1195 / 49
Регистрация: 02.05.2010
Сообщений: 2,925
Записей в блоге: 2
29.03.2012, 11:28 #4
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
#include <iostream>
#include <vector>
 
int main()
{
    const int SIZE = 3;
    int array[SIZE][3]={ {1,1,0}, {1,1,-1}, {1,0,-1} };
    
    std::vector< std::vector< int > > vec(SIZE, std::vector< int > (3) );
    for (int i = 0; i < SIZE; ++i)
        vec[i].assign( array[i], array[i] + 3 );
        
    
    //вывод
    for (int i = 0; i < SIZE; ++i)
    {
        for (int j = 0; j < 3; ++j)
        {
            std::cout << vec[i][j] << ' ';
        }
        
        std::cout << std::endl;
    } 
}
1
ForEveR
В астрале
Эксперт С++
7978 / 4737 / 321
Регистрация: 24.06.2010
Сообщений: 10,543
Завершенные тесты: 3
29.03.2012, 12:24 #5
Аль std::array.
1
Van111
209 / 188 / 4
Регистрация: 03.08.2011
Сообщений: 2,597
Записей в блоге: 12
29.03.2012, 13:28  [ТС] #6
как удалить последовательность состоящих из трёх элементов(вектора)
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
 const int SIZE = 3;
    int array[SIZE][3]={ {1,1,0}, {1,1,-1}, {1,0,-1} };
    
    std::vector< std::vector< int > > vec(SIZE, std::vector< int > (3) );
    for (int i = 0; i < SIZE; ++i)
        vec[i].assign( array[i], array[i] + 3 );
        
    
    perebor(vec,SIZE);
    std::vector< std::vector< int > >:: iterator iter=vec.begin();
  
    vec.erase(iter[0]); /////////////////удалить вектор vec[0]
    
       for (int i = 0; i < SIZE; ++i)
        std::cout <<vec[i][0] <<' ' <<vec[i][1] <<' ' <<vec[i][2] <<std::endl;
0
ForEveR
В астрале
Эксперт С++
7978 / 4737 / 321
Регистрация: 24.06.2010
Сообщений: 10,543
Завершенные тесты: 3
29.03.2012, 13:30 #7
Van111,
C++
1
vec.erase(iter);
1
Van111
209 / 188 / 4
Регистрация: 03.08.2011
Сообщений: 2,597
Записей в блоге: 12
29.03.2012, 13:34  [ТС] #8
ForEveR, а как удалить вектор(целых чисел) который находится в другом векторе
0
ForEveR
В астрале
Эксперт С++
7978 / 4737 / 321
Регистрация: 24.06.2010
Сообщений: 10,543
Завершенные тесты: 3
29.03.2012, 13:40 #9
Van111, Эм... А это что делает по вашему?
C++
1
std::vector<std::vector<int> >::iterator iter = vec.begin();
Указывает на первый элемент вектора, где разыменованный итератор будет std::vector<int> =>
C++
1
vec.erase(iter);
удаляет первый элемент вектора, то есть будет удален первый std::vector<int>.
0
Van111
209 / 188 / 4
Регистрация: 03.08.2011
Сообщений: 2,597
Записей в блоге: 12
29.03.2012, 13:47  [ТС] #10
Цитата Сообщение от ForEveR Посмотреть сообщение
А это что делает по вашему?
мне надо удалить три элемента int чтоб допустим из
{1,1,0}, {1,1,-1}, {1,0,-1}
получилось
{1,1,0}, {1,0,-1}
0
ForEveR
В астрале
Эксперт С++
7978 / 4737 / 321
Регистрация: 24.06.2010
Сообщений: 10,543
Завершенные тесты: 3
29.03.2012, 13:57 #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
#include <iostream>
#include <vector>
#include <algorithm>
#include <iterator>
 
int main()
{
   typedef std::vector<int> container_type;
   
   std::vector<container_type> vec = 
   {
      container_type({1,2,3}),
      container_type({3,4,5}),
      container_type({6,7,8})
   };
   std::vector<container_type>::iterator iter = vec.begin();
   vec.erase(iter);
   std::for_each(vec.begin(), vec.end(), [](const container_type& c)
   {
      std::copy(c.begin(), c.end(), std::ostream_iterator<int>(std::cout, " "));
      std::cout << std::endl;
   });
}
http://liveworkspace.org/code/5882f4...19e3527a490b70
2
Van111
209 / 188 / 4
Регистрация: 03.08.2011
Сообщений: 2,597
Записей в блоге: 12
29.03.2012, 14:33  [ТС] #12
компилятор выдаёт ошибки
expected primary-expression ( token
expected primary-expression { token



Цитата Сообщение от ForEveR Посмотреть сообщение
std::vector<container_type> vec =
* *{
* * * container_type({1,2,3}),
* * * container_type({3,4,5}),
* * * container_type({6,7,8})
* *};
0
ForEveR
В астрале
Эксперт С++
7978 / 4737 / 321
Регистрация: 24.06.2010
Сообщений: 10,543
Завершенные тесты: 3
29.03.2012, 14:43 #13
Van111, Просто мне так было удобнее инициализировать. Пример удаления я показал.
1
Van111
209 / 188 / 4
Регистрация: 03.08.2011
Сообщений: 2,597
Записей в блоге: 12
29.03.2012, 15:49  [ТС] #14
всё разобрался

Добавлено через 30 минут
а как вот это кусок кода заменить
C++
1
2
 for (int i = 0; i < SIZE; ++i)
        vec[i].assign( array[i], array[i] + 3 );
0
ForEveR
В астрале
Эксперт С++
7978 / 4737 / 321
Регистрация: 24.06.2010
Сообщений: 10,543
Завершенные тесты: 3
29.03.2012, 16:06 #15
Van111, Что значит заменить? На что заменить?
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
29.03.2012, 16:06
Привет! Вот еще темы с ответами:

Есть квадратная матрица А порядка n и вектор b с n элементами. Получить вектор Аb. - C++
Привет. Не могу разобратся, вот задание: Есть квадратная матрица А порядка n и вектор b с n элементами. Получить вектор Аb.

Создать иерархию классов вектор(longint) и безопасный вектор с проверкой выхода за пределы - C++
Помогите не знаю как сделать! Создать иерархию классов вектор(longint) и безопасный вектор с проверкой выхода за пределы. Безопасный...

Вектор с неизвестным количеством чисел преобразовать в другой вектор, где числа будут стоять по возрастанию - C++
Вектор с неизвестным количеством чисел нужно превратить в другой вектор, где числа будут стоять по возрастанию. Мне код не столько нужен,...

Считать вектор из файла, записать вектор в файл - C++
Доброго времени суток. Программа должна считывать числа из заданного файла, потом записывать в другой файл вектор, в котором каждый элемент...


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

Или воспользуйтесь поиском по форуму:
15
Yandex
Объявления
29.03.2012, 16:06
Ответ Создать тему
Опции темы

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