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

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

Войти
Регистрация
Восстановить пароль
 
ijonhson
47 / 47 / 1
Регистрация: 09.03.2011
Сообщений: 584
#1

vector объектов структуры - C++

29.01.2013, 06:38. Просмотров 650. Ответов 10
Метки нет (Все метки)

Здравствуйте господа програмисты,возникла у меня трудность,в програмке будет присутствовать неизвестное заранее количество координат максимум где-то под 2000-2500(8 integer на объект).Но в большинстве случаев будут использоваться всего 30-100 и было у меня в мыслях уже писать массив объектов структуры на 2500 персон да вот попалась на глаза книга по STL а там пречудесный вещ vector.
Тока обрадовался я раньше времени в vector оказывается вхожи лишь объекты с пустым конструктором.
А в чём всё-таки смысл если нельзя передать свойства объекту структуры в векторе?
У меня пока остаётся 2 варианта:либо лепить 8 векторов(на каждую координату)либо стандартный массив на максимум объектов.
Может подскажете вариант повеселее?

Добавлено через 2 минуты
видел на форуме пример такого рода
C++
1
2
3
4
vector <tovar*> tovar_list; //лучше-таки  указатели
tovar tr;
tovar_list.push_back(&tr);
tovar_list[0]->name = "orange";
но лезть в динамическое распределение памяти очень не хочется
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
29.01.2013, 06:38     vector объектов структуры
Посмотрите здесь:

Создать vector из объектов класса - C++
Добрый вечер! У меня есть некий класс SuperClass, в котором есть динамическое поле: class SuperClass { public: int *v; ...

Массив объектов пользовательского типа в vector - C++
Доброго времени суток. Кто может подсказать что храниться в vector&lt; Employer* &gt; employerArray ( 4 ); при его инициализации?

Заполнение структуры из vector - C++
Доброго времени суток. Имеется такого вида структура: struct Point { Point (void); double x,y; int number;

Vector, хранящий разные структуры - C++
Решил на C++ написать программу, которая может в 1 массиве (векторе) хранить разные структуры. Допусти есть несколько структур: Men ...

Редактирование и сохранение структуры <vector> - C++
Доброго времени суток, не могу ума приложить, как реализовать функцию для редактирования данных в &lt;vector&gt; с последующим занесением в нее. ...

Sort vector, сортировка по двум полям структуры - C++
Поскажите как отсортировать если: struct DATA{ string fir; string sec; double sm; }; vector &lt;DATA&gt; vec; vector...

Как добавить элемент структуры с использованием #include <vector> ? - C++
#include &lt;vector&gt; #include &lt;iostream&gt; using namespace std; struct Item { int n; };

После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
LASpace
34 / 34 / 3
Регистрация: 27.01.2013
Сообщений: 142
29.01.2013, 11:37     vector объектов структуры #2
Структура для координат:
C++
1
2
3
4
struct coordinate
{
    int X1,X2,X3,X4,X5,X6,X7,X8;
};
Чудо код:
C++
1
2
3
4
5
6
7
8
9
10
11
12
    
vector <coordinate> H;
coordinate ST1;
 
ST1.X1 = 1;
H.push_back(ST1);
 
ST1.X1 = 8;
H.push_back(ST1);
 
ShowMessage(IntToStr(H[0].X1));//Выдаст 1
ShowMessage(IntToStr(H[1].X1));//выдаст 8
I.M.
564 / 547 / 5
Регистрация: 16.12.2011
Сообщений: 1,389
29.01.2013, 12:02     vector объектов структуры #3
Цитата Сообщение от ijonhson Посмотреть сообщение
Тока обрадовался я раньше времени в vector оказывается вхожи лишь объекты с пустым конструктором.
Почему же?
C++
1
vector_name.push_back(class_name(param1, param2));
ijonhson
47 / 47 / 1
Регистрация: 09.03.2011
Сообщений: 584
29.01.2013, 23:18  [ТС]     vector объектов структуры #4
спасибо вроде разобрался единственный вопрос:
заполняю элемент массива, но вместо введённых значений там какой-то мусор может глянете?
в classesij.cpp создан vector объектов далее заполнено 0-вой объект и выведено значение 0-го шовмессаджем ерись одним вловом
Вложения
Тип файла: rar IJокна.rar (455.7 Кб, 9 просмотров)
I.M.
564 / 547 / 5
Регистрация: 16.12.2011
Сообщений: 1,389
29.01.2013, 23:57     vector объектов структуры #5
C++
1
2
3
4
5
6
7
8
massive::massive(int xl,int yl,int x1l,int y1l,int lrtbl)//конструктор класса массива объектов
{
xl=x; // тут и далее надо присваивать наоборот
yl=y;
x1l=x1;
y1l=y1;
lrtbl=lrtb;
}
ijonhson
47 / 47 / 1
Регистрация: 09.03.2011
Сообщений: 584
30.01.2013, 00:57  [ТС]     vector объектов структуры #6
Спасибо я догадывался что где-то детская ошибка но глаз ещё не намётан.
migtymasha
1 / 1 / 0
Регистрация: 13.05.2013
Сообщений: 11
19.05.2013, 20:07     vector объектов структуры #7
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
struct coord
    {
        double x,y;
    };
    vector<coord> v1(4);
    for (int i=0; i<4; i++)
    {
        double x,y;
        cout<<"Введите координаты "<<i<<"ой точки первого множества: ";
        cin>>x>>y;
        cout<<endl;
        coord tochka;
        tochka.x=x;
        tochka.y=y;
        v1.push_back(tochka);
    };
у меня похожая проблема( можете подсказать, где ошибка? в процессе компиляции никаких ошибок не выскакивает, но в tochka не запоминаются данные, а в вектор и тем более..
DU
1480 / 1056 / 45
Регистрация: 05.12.2011
Сообщений: 2,279
19.05.2013, 20:11     vector объектов структуры #8
как проверяли?
migtymasha
1 / 1 / 0
Регистрация: 13.05.2013
Сообщений: 11
19.05.2013, 20:16     vector объектов структуры #9
точку остановы ставила около цикла
I.M.
564 / 547 / 5
Регистрация: 16.12.2011
Сообщений: 1,389
19.05.2013, 20:42     vector объектов структуры #10
Цитата Сообщение от migtymasha Посмотреть сообщение
vector<coord> v1(4);
заменить на
vector<coord> v1;
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
19.05.2013, 21:47     vector объектов структуры
Еще ссылки по теме:

Доступ к элементу структуры, массив которых хранится в vector - C++
Как получить доступ к элементу структуры, если несколько структур хранится в vector? Я прохожу по вектору через итератор. ...

Реализовать поиск в массиве пользовательских объектов по заданному полю (использовать std::vector) - C++
помогите,пожалуйста,очень нужно!!!!!! Имеются сведения(модель-цена). Выделить заданное число самых дешевых моделей.(ЧЕРЕЗ ВЕКТОР)

Авиаперелеты, вывод объектов структуры - C++
Здравствуйте! Помогите, пожалуйста, найти ошибку в коде задачи. &quot;Авиаперелеты: дата вылета, время вылета, аэропорт назначения, общее...

Удаление объектов структуры из файла по условию - C++
Не работает удаление! при удаление элемента происходит поиск! в итоге в поиске отоброжается -8690877374 типа такого элемента нет в...

Создать вектор, содержащий несколько объектов типа данной структуры - C++
Здравствуйте, прошу помощи в создании вектора структур, т.е вот структура : struct MemoryBlock { size_t offset; ...


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

Или воспользуйтесь поиском по форуму:
migtymasha
1 / 1 / 0
Регистрация: 13.05.2013
Сообщений: 11
19.05.2013, 21:47     vector объектов структуры #11
I.M., спасибо) стало лучше, правда теперь неправильно считает расстояние между точками, но хоть как-то считает)

Добавлено через 6 минут
I.M., можете сказать, правильно ли написано?

C++
1
2
3
4
5
6
7
for(int i=0; i<4; i++)
    {
        for (int j=i+1; j<4; j++)
        {
            m[i][j]=sqrt(pow(v1[i].x-v1[j].x,2)+pow(v1[i].y-v1[j].y,2));
        };
    };
Добавлено через 43 минуты
все норм, это я дебил)
Yandex
Объявления
19.05.2013, 21:47     vector объектов структуры
Ответ Создать тему
Опции темы

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