Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.75/40: Рейтинг темы: голосов - 40, средняя оценка - 4.75
148 / 4 / 0
Регистрация: 19.02.2013
Сообщений: 369

Что такое векторы, и для чего нужны?

04.04.2013, 17:16. Показов 7877. Ответов 6
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
читаю читаю но ответа в книге зачем нужны вектора так и не могу найти!!! пожалуйста напишите пример!! что бы я понял! спасибо!
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
04.04.2013, 17:16
Ответы с готовыми решениями:

Что такое static const и для чего он нужен?
Что такое static const ? И для чего он нужен ?

Что такое полис и конечные автоматы и для чего используются в с++?
ОЧЕНЬ ХОЧУ ЗНАТЬ. ПОМОГИТЕ!!!!!!!!!

Что за векторы и зачем они нужны
Читал книгу по программированию на С++ и дошел до раздела векторы. Вот хотел у вас спросить за чем они нужны? и мне они напоминают массивы

6
 Аватар для fjay69
90 / 90 / 17
Регистрация: 26.10.2012
Сообщений: 249
04.04.2013, 17:28
Векторы - это реализация динамического массива в C++, т.е. такого массива, чья длина меняется в ходе программы. Называется вектор, потому что добавлять и удалять элементы можно только с одного конца.
0
148 / 4 / 0
Регистрация: 19.02.2013
Сообщений: 369
04.04.2013, 18:25  [ТС]
Цитата Сообщение от fjay69 Посмотреть сообщение
Векторы - это реализация динамического массива в C++, т.е. такого массива, чья длина меняется в ходе программы. Называется вектор, потому что добавлять и удалять элементы можно только с одного конца.
Пример можешь написать? Пожалуйста

Добавлено через 51 минуту
жду ответа
0
В астрале
Эксперт С++
 Аватар для ForEveR
8049 / 4806 / 655
Регистрация: 24.06.2010
Сообщений: 10,562
04.04.2013, 18:32
fjay69, wat? Вы хоть посмотрели бы на функции вектора, прежде чем такое говорить http://en.cppreference.com/w/cpp/container/vector
C++
1
vec.insert(vec.begin(), value);
1
 Аватар для fjay69
90 / 90 / 17
Регистрация: 26.10.2012
Сообщений: 249
04.04.2013, 20:21
Цитата Сообщение от ForEveR Посмотреть сообщение
fjay69, wat? Вы хоть посмотрели бы на функции вектора, прежде чем такое говорить
Сорри, затупил. Вектор в том плане, что у каждого его элемента только односторонняя связь.
Как сказали бы некоторые: у вас баттхёрт
0
Автор FAQ
 Аватар для -=ЮрА=-
6614 / 4256 / 401
Регистрация: 08.08.2009
Сообщений: 10,325
Записей в блоге: 24
04.04.2013, 20:36
DarkJoker1992, веткторы понятие ёмкое, думаю ты имеешь ввиду STL контейнер std::vector. Думаю сразу бросилось в глаза словой контейнер, простыми словами это храниелище данных (тот же массив), причём преимущество вектора в том что можно сделать массив абсолютно любых типов данных (и даже тех которых нет в стандартной библиотеке). При этом алгоритмы обращения к элементам вектора для абсолютно либых типов данных будут одинаковы. Второй вкусностью векторов является тот факт что на их базе очень легко организовывать динамические массивы (программисту не надо думать как выделить или уменьшить память под хранимые элементы - за нас уже позаботились и при добавлении push_back вектор сам увеличит свой размер на 1 элемент, ровно как при удалении одного элемента pop_back Вектор сам сожмётся на 1 элемент)
Вот простой код для понимания вектора
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
#include <ctime>
#include <vector>
#include <iostream>
using namespace std;
 
int main()
{
    int i, n;
    vector<int> array;
    srand(time(0));//Установили нач значение гнератора случайных чисел
    cout<<"Enter num elements : ";
    cin>>n;cin.get();
    for(i = 0; i < n; i++)
        array.push_back(rand() % 100 - 50);//добавлеяем в вектор чила от -50 до 50
    cout<<"Rand array : "<<endl;
    for(i = 0; i < array.size(); i++)
        cout<<array[i]<<" ";
    cout<<endl;
    cin.get();
    return 0;
}
Миниатюры
Что такое векторы, и для чего нужны?  
2
Автор FAQ
 Аватар для -=ЮрА=-
6614 / 4256 / 401
Регистрация: 08.08.2009
Сообщений: 10,325
Записей в блоге: 24
04.04.2013, 20:46
DarkJoker1992, обращу твоё внимание что вектор предусматривает простую индексацию
Цитата Сообщение от -=ЮрА=- Посмотреть сообщение
cout<<array[i]<<" ";
, т.е к его элементам можно обращаться так же как и к элементу массива. У векторов есть и другой способ доступа к элементам - итератор, вот скажем как здесь
Цитата Сообщение от ForEveR Посмотреть сообщение
vec.begin()
- правда здесь итератор служит для реализации метода insert, но итератор можно юзать и для прямого обращения к элементам вектора, поясняю чуть изменённым кодом
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
#include <ctime>
#include <vector>
#include <iostream>
using namespace std;
 
int main()
{
    int i, n;
    vector<int> array;
    vector<int>::iterator it;
    srand(time(0));//Установили нач значение гнератора случайных чисел
    cout<<"Enter num elements : ";
    cin>>n;cin.get();
    for(i = 0; i < n; i++)
        array.push_back(rand() % 100 - 50);//добавлеяем в вектор чила от -50 до 50
    cout<<"Rand array : "<<endl;
    for(it = array.begin(); it < array.end(); it++)
        cout<<(*it)<<" ";
    cout<<endl;
    cin.get();
    return 0;
}
Отработка будет аналогична отработке в посте 6-ть

Добавлено через 3 минуты

Не по теме:

В заключение пара ссылок
http://www.cplusplus.com/reference/vector/vector/
http://ru.wikipedia.org/wiki/Vector_(C%2B%2B)



Добавлено через 10 секунд

Не по теме:

В заключение пара ссылок
http://www.cplusplus.com/reference/vector/vector/
http://ru.wikipedia.org/wiki/Vector_(C%2B%2B)

1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
04.04.2013, 20:46
Помогаю со студенческими работами здесь

Объясните человеческим языком мне чайнику что такое singleton, статический класс. Зачем они нужны. Что рекомендуете прочитать мне для начала
Объясните человеческим языком мне чайнику что такое singleton, статический класс. Зачем они нужны. Что рекомендуете прочитать мне для...

Что такое compile-time алгоритмы и для чего они нужны?
А есть от них хоть какая-то практическая польза? По-моему нет

Нюансы синтаксиса: объяснить что происходит в заданных строках кода и для чего нужны указанные конструкции
Наткнулся на урок по C++ в интернете, где был пример с перебором &quot;телефонной книги&quot;. Вот кусок кода, где объявляется класс: class...

Культура оформления кода: что такое enum? Где, когда и для чего уместно применять этот тип?
не понял за что отвечают эти две строчки: enum ChosenOperation { ADD = 1, SHOW, SEARCH, EXIT }; enum SearchingCriteria { NAME =...

Что такое hash-таблицы, и зачем они нужны?
Обьясните пожалуста по простому что такое хеш таблици и зачем они надо... пытался разобратся с ними сам, но ничего не получилось....


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

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
Новые блоги и статьи
Символьное дифференцирование
igorrr37 13.02.2026
/ * Логарифм записывается как: (x-2)log(x^2+2) - означает логарифм (x^2+2) по основанию (x-2). Унарный минус обозначается как ! в-строка - входное арифметическое выражение в инфиксной(обычной). . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL3_image
8Observer8 10.02.2026
Содержание блога Библиотека SDL3_image содержит инструменты для расширенной работы с изображениями. Пошагово создадим проект для загрузки изображения формата PNG с альфа-каналом (с прозрачным. . .
Установка Qt-версии Lazarus IDE в Debian Trixie Xfce
volvo 10.02.2026
В общем, достали меня глюки IDE Лазаруса, собранной с использованием набора виджетов Gtk2 (конкретно: если набирать текст в редакторе и вызвать подсказку через Ctrl+Space, то после закрытия окошка. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru