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

vector<Struct2{int,vector<struct1>}> или множественное наследование ... - C++

Восстановить пароль Регистрация
 
Рейтинг: Рейтинг темы: голосов - 11, средняя оценка - 5.00
Student1999
0 / 0 / 0
Регистрация: 07.03.2009
Сообщений: 3
07.03.2009, 19:36     vector<Struct2{int,vector<struct1>}> или множественное наследование ... #1
Здравствуйте! Помогите, пожалуйста. Есть такие данные:
Код
typedef struct 
{
           int x;
    int y;              // координаты вершин
}Point;
typedef  struct 
{
          int vertex_num;           // количество вершин
          vector<Point> vertexes;   // вектор содержащий координаты вершин фигуры
}Shape;
typedef  struct 
{
          string name;
          vector<Shape> vec;
}Form;
 int main(){
vector<Form> v1(10);
name - это треугольник, квадрат и т.д. Тогда соответственно количество вершин 3,4 и т.д., координат 3,4 и т.д. по паре(x,y).
Не понятно как заполнять вектор. Вот так не работает :
v1[0].name="triangle";
v1[0].vec={3,{{0,0},{0,0},{0,0}}};
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
07.03.2009, 19:36     vector<Struct2{int,vector<struct1>}> или множественное наследование ...
Посмотрите здесь:

Перегрузка оператора *= для vector<int> C++
Сериализация и десериализация vector'а int'ов C++
vector<int>* v; обращение к конкретному элементу C++
C++ accumulate к vector<pair<int, int>>
C++ vector < vector < pair<int,int> > > g
C++ set<vector<int> >, вывод елементов
Файл в vector<int> C++
C++ Запихнуть в vector<int>, char?
Vector<unsigned char> в int C++
C++ Работа с Vector<int[2]>
C++ Окончание ввода в vector<int> по '\n'
C++ Что означает конструкция vector<int> v1{ 5 }; ?

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
FAT
5 / 5 / 0
Регистрация: 03.03.2009
Сообщений: 18
07.03.2009, 22:13     vector<Struct2{int,vector<struct1>}> или множественное наследование ... #2
Вставка в вектор производится с помощью метода push_back (вставка в конец) и с помощью метода insert (вставка в произвольное место).
Student1999
0 / 0 / 0
Регистрация: 07.03.2009
Сообщений: 3
07.03.2009, 22:24  [ТС]     vector<Struct2{int,vector<struct1>}> или множественное наследование ... #3
Размер вектора указан при инициализации.В отладчике с полем стринг никаких проблем, а вот со вторым полем vector ...
Неужели никто не писал наследование в классах?
Vourhey
Почетный модератор
6470 / 2245 / 123
Регистрация: 29.07.2006
Сообщений: 12,635
07.03.2009, 22:35     vector<Struct2{int,vector<struct1>}> или множественное наследование ... #4
Чем методы, указанные выше не подошли?
Student1999
0 / 0 / 0
Регистрация: 07.03.2009
Сообщений: 3
07.03.2009, 22:41  [ТС]     vector<Struct2{int,vector<struct1>}> или множественное наследование ... #5
Может в алгоритме решения проблема? Задание такое:
Написать программу, которая заполняет вектор геометрическими фигурами. Геометрическая фигура может быть треугольником, квадратом, прямоугольником или пяти угольником. Структура описывающая геометрическую фигуру определена ниже:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
typedef  struct 
{
    int vertex_num;      // количество вершин, для треугольника 3, для квадрата и 
                                   // прямоугольника 4, для пяти угольника 5
    vector<Point> vertexes;   // вектор содержащий координаты вершин фигуры
    // Для треугольника содержит 3 элемента
                    // Для квадрата и прямоугольника содержит 4 
                                             // элемента
                                             // Для пятиугольника 5 элементов
} Shape;
 
typedef struct
{
    int x,y;
} Point;
Не понимаю как сделать по-другому

Добавлено через 3 минуты 6 секунд
Цитата Сообщение от Vourhey Посмотреть сообщение
Чем методы, указанные выше не подошли?
Тем, что поле vector компилятор воспринимает как ЕДИНОЕ. push_back - зарезервирует мне не нужный 11 элемент, а insert это то же что и =, только через итераторы ...
Yandex
Объявления
07.03.2009, 22:41     vector<Struct2{int,vector<struct1>}> или множественное наследование ...
Ответ Создать тему
Опции темы

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