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

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

Войти
Регистрация
Восстановить пароль
 
tim289
4 / 4 / 2
Регистрация: 15.02.2014
Сообщений: 25
#1

Структуры в векторе - C++

27.02.2014, 14:39. Просмотров 1126. Ответов 8
Метки нет (Все метки)

C++
1
2
3
4
5
6
7
8
9
struct Node
    {
        char ch;
        int parent;
        int zero;
        int one;
        bool branch;
    } ;
     vector <Node> haff;
почему выдает ошибку?

Добавлено через 3 минуты
если интересно..
C:\Users\Тимофей\Desktop\pragma2\main.cpp||In function 'int main()':|
C:\Users\Тимофей\Desktop\pragma2\main.cpp|67|warning: non-static data member initializers only available with -std=c++11 or -std=gnu++11 [enabled by default]|
C:\Users\Тимофей\Desktop\pragma2\main.cpp|68|warning: non-static data member initializers only available with -std=c++11 or -std=gnu++11 [enabled by default]|
C:\Users\Тимофей\Desktop\pragma2\main.cpp|69|warning: non-static data member initializers only available with -std=c++11 or -std=gnu++11 [enabled by default]|
C:\Users\Тимофей\Desktop\pragma2\main.cpp|70|warning: non-static data member initializers only available with -std=c++11 or -std=gnu++11 [enabled by default]|
C:\Users\Тимофей\Desktop\pragma2\main.cpp|71|warning: non-static data member initializers only available with -std=c++11 or -std=gnu++11 [enabled by default]|
C:\Users\Тимофей\Desktop\pragma2\main.cpp|73|error: template argument for 'template<class _Alloc> class std::allocator' uses local type 'main()::Node'|
C:\Users\Тимофей\Desktop\pragma2\main.cpp|73|error: trying to instantiate 'template<class _Alloc> class std::allocator'|
C:\Users\Тимофей\Desktop\pragma2\main.cpp|73|error: template argument 2 is invalid|
C:\Users\Тимофей\Desktop\pragma2\main.cpp|73|error: invalid type in declaration before ';' token|
C:\Users\Тимофей\Desktop\pragma2\main.cpp|73|warning: unused variable 'haff' [-Wunused-variable]|
||=== Build finished: 4 errors, 6 warnings (0 minutes, 1 seconds) ===|

Добавлено через 53 секунды
73 строчка это vector <Node> haff;
0
Лучшие ответы (1)
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
27.02.2014, 14:39
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Структуры в векторе (C++):

Помещение структуры в вектор, удаление структуры, изменение элементов структуры - C++
Здравствуйте. Помогите разобраться с тем, как: 1 - находить элементы в векторе зная уникальный элемент структуры. 2 - удалять...

Функция внутри структуры использует указатель, как поле этой структуры - C++
Коротко, есть класс A, описан в файле A_class.h ну и реализованы функции в A_class.cpp, есть файл GlobalItems.h, где хранятся глобальные...

Динамические структуры данных. Программа ввода в структуры и вывода информации из неё. - C++
Автоматизированная информационная система на железнодорожном вокзале содержит сведения об отправлении поездов дальнего следования. Для...

Структуры, массивы структур (как можно присваивать(инициализировать) значения полям структуры) - C++
Есть у меня вот такая структура, например struct Subject { int cost; int Volume; }; Потом создаю экземпляр, Subject G; ...

Пары в векторе - C++
Задан вектор в 200 чисел который рандомно заполнен в диапазоне от -50 до 50 . Нужно из этого безобразия получить количество отрицательных и...

Сортировка в векторе - C++
Нужно отсортировать студентов в векторе по размеру стипендии от большей к меньшей. Для этого у меня есть френд функция в классе но как...

8
Tulosba
:)
Эксперт С++
4396 / 3232 / 297
Регистрация: 19.02.2013
Сообщений: 9,045
27.02.2014, 14:42 #2
tim289, судя по тексту ошибок нужно привести весь код, а не тот кусок, который привели.
0
THE--MASTER
Заблокирован
27.02.2014, 14:42 #3
Лучший ответ Сообщение было отмечено автором темы, экспертом или модератором как ответ
Ну потому, что компилятор у тебя галимый. В VisualStudio современной такого бы уже не было.
Тебе ж пишут, что подобные объявления допустимы начиная со стандартна C++11, для того, чтоб в своей галимой среде ты мог это использовать, тебе нужно добавить в опции компилятора -std=c++11 или -std=gnu++11. MinGw я полагаю?
Visual Studio 2012 по умолчнаю всё ок
0
Tulosba
:)
Эксперт С++
4396 / 3232 / 297
Регистрация: 19.02.2013
Сообщений: 9,045
27.02.2014, 14:45 #4
THE--MASTER, то что относится к C++11 помечено как "предупреждения", а не "ошибки".
Цитата Сообщение от THE--MASTER Посмотреть сообщение
Visual Studio 2012 по умолчнаю всё ок
2012 студия не поддерживает полностью C++11.
0
THE--MASTER
Заблокирован
27.02.2014, 14:51 #5
Цитата Сообщение от Tulosba Посмотреть сообщение
2012 студия не поддерживает полностью C++11.
согласен, но с Update4 начали работать std::to_string
Цитата Сообщение от Tulosba Посмотреть сообщение
то что относится к C++11 помечено как "предупреждения", а не "ошибки".
да кстате, что - то я и не заметил, ошибки - то к коду и не относятся :-)
0
tim289
4 / 4 / 2
Регистрация: 15.02.2014
Сообщений: 25
27.02.2014, 14:52  [ТС] #6
все работает в вижуале)проверил)
code blocks тупил)
0
Tulosba
:)
Эксперт С++
4396 / 3232 / 297
Регистрация: 19.02.2013
Сообщений: 9,045
27.02.2014, 15:10 #7
Цитата Сообщение от THE--MASTER Посмотреть сообщение
но с Update4 начали работать std::to_string
а инициализацию векторов списками так и не осилили...
Цитата Сообщение от tim289 Посмотреть сообщение
code blocks тупил)
возможно, Вы просто не умеете его готовить.

Цитата Сообщение от THE--MASTER Посмотреть сообщение
std::to_string
кстати, еще даже в 2010 была
0
THE--MASTER
27.02.2014, 15:19
  #8

Не по теме:

Цитата Сообщение от Tulosba Посмотреть сообщение
кстати, еще даже в 2010 была
возможно, я просто знал, что студия, которую я так люблю, не поддерживает эту штуку - по этому и не проверял, поставил udpate4 на 2012 - случайно проверил - работает :-)))))

0
easybudda
Модератор
Эксперт CЭксперт С++
9664 / 5614 / 952
Регистрация: 25.07.2009
Сообщений: 10,778
27.02.2014, 17:45 #9
Цитата Сообщение от tim289 Посмотреть сообщение
code blocks тупил
Может что-то делали не так?
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
26
27
28
29
30
31
32
33
#include <iostream>
#include <vector>
#include <string>
 
struct MyStruct {
    int number;
    std::string title;
    
    MyStruct(int n, std::string t) : number(n), title(t) {}
};
 
std::ostream & operator << (std::ostream & ost, const MyStruct & ms) {
    ost << ms.number << ": " << ms.title;
    return ost;
}
 
int main() {
 
    std::vector<MyStruct*> vector;
    vector.push_back(new MyStruct(1, "first"));
    vector.push_back(new MyStruct(2, "second"));
    vector.push_back(new MyStruct(3, "third"));
    
    for ( std::vector<MyStruct*>::const_iterator i = vector.begin(); i != vector.end(); ++i ) {
        std::cout << **i << std::endl;
        delete *i;
    }
 
    std::vector<MyStruct> vector2;
    vector2.push_back(MyStruct(13, "bla bla bla"));
    std::cout << *vector2.begin() << std::endl;     
    return 0;
}
Код
[andrew@andrew class]$ g++ -o MyStructPointer MyStructPointer.cpp 
[andrew@andrew class]$ ./MyStructPointer 
1: first
2: second
3: third
13: bla bla bla
[andrew@andrew class]$ g++ -dumpversion
4.4.7
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
27.02.2014, 17:45
Привет! Вот еще темы с ответами:

Поиск в векторе - C++
Есть вектор v: v = 0; v = 1; v = 2; v = 4; v = 6; Как с помощью алгоритма find узнать есть ли в векторе число 8, между...

Поиск в векторе - C++
Есть вектор v Нужно задать поиск значения 6 и присвоить переменной i номер элемента вектора v, в котором найдена искомое значение 6. В...

Вывод структуры, строка как элемент структуры - C++
Описать структуру с именем TRAIN, содержащую следующие поля: □ название пункта назначения; □ номер поезда; □ время отправления. ...

Сравнение элементов в векторе - C++
Подскажите как проверить на равенство поля объектов в векторе: Делаю так: #include &lt;iostream&gt; #include &lt;conio.h&gt; #include...


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

Или воспользуйтесь поиском по форуму:
9
Yandex
Объявления
27.02.2014, 17:45
Ответ Создать тему
Опции темы

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