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

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

Войти
Регистрация
Восстановить пароль
 
densmoke
0 / 0 / 0
Регистрация: 03.06.2014
Сообщений: 5
#1

Как реализовать структуру - C++

03.06.2014, 19:34. Просмотров 406. Ответов 10
Метки нет (Все метки)

Доброго времени суток.
Никак не могу скомпиллировать эту структуру.
C++
1
struct tree{ char inf[5]; list<tree*> lt;};
Выдает вот эти ошибки
Код
Ошибка	1	error C2143: синтаксическая ошибка: отсутствие ";" перед "<"	\\densmoke-nb\документы\visual studio 2013\projects\yacc — копия (2)\yacc\ytab.h	6	1	yacc
Ошибка	2	error C4430: отсутствует спецификатор типа - предполагается int. Примечание. C++ не поддерживает int по умолчанию	\\densmoke-nb\документы\visual studio 2013\projects\yacc — копия (2)\yacc\ytab.h	6	1	yacc
Ошибка	3	error C2238: непредвиденные лексемы перед ";"	\\densmoke-nb\документы\visual studio 2013\projects\yacc — копия (2)\yacc\ytab.h	6	1	yacc
0
Лучшие ответы (1)
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
03.06.2014, 19:34
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Как реализовать структуру (C++):

Как можно реализовать такую структуру? - C++
Реализовать структуру данных, которая имеет все те же операции, что массив длины n, а именно • начать работу; • положить в i-ю ячейку...

Как лучше реализовать структуру класса? - C++
Есть задача создать класс авто-архив. Класс реализовал со структурой внутри класса. Создал указатель на структуру с полями, марка, модель,...

Реализовать структуру Music - C++
Язык форума - русский. Переведите! Vitaliy1212, при повторном нарушении пункта правил 1.4. тема будет закрыта Задача.Описати структуру...

Реализовать структуру Student - C++
HELP GUYS :help: Следующие задания требуется решить с использованием классов.При этом обязательно оформить методы для выполнения...

Как создать структуру-список, поля которой — ссылка на такую же структуру - C++
Суть вопроса в том, как создать структуру-список, поля которой - ссылка на сл. элемент(такую же структуру) и ссылка на объект, относящийся...

Как правильно написать функцию, которая редактирует структуру по полю Name и возвращает новую, исправленную структуру?.. - C++
Нужно отредактировать структуру по выбору пользователя. Проблема заключается в создании функции. Подскажите, а лучше покажите, как...

10
Riddleman
1 / 1 / 4
Регистрация: 03.03.2013
Сообщений: 49
03.06.2014, 20:11 #2
Тож интересно, сам пробовал. не хочет контейнер создаватся внутри структуры . Если вы создаете бинарное дерево, то может вы сможете выкрутится как-то так
C++
1
2
3
4
5
struct tree
{
   char inf[5];
   tree *left, *right;
};
0
densmoke
0 / 0 / 0
Регистрация: 03.06.2014
Сообщений: 5
03.06.2014, 20:19  [ТС] #3
Riddleman, в том то и дело, что количество ветвей заранее не определено. наверное придется все таки создавать свой список с уже определенным типом данных внутри. хотя скорее всего тоже не факт, что сработает.
0
Riddleman
1 / 1 / 4
Регистрация: 03.03.2013
Сообщений: 49
03.06.2014, 20:53 #4
Да нет ваша идея правильная, просто здесь есть какой то подводный камень о котором, увы, я не знаю. Здесь нужен кто то с большым опытом чем у меня. Самому интересно каково решение. Буду следить за этой темой
0
zss
Модератор
Эксперт С++
6478 / 6041 / 1983
Регистрация: 18.12.2011
Сообщений: 15,660
Завершенные тесты: 1
03.06.2014, 21:28 #5
Ваш ларчик открывается просто.
Забыли
C++
1
#include <list>
1
densmoke
0 / 0 / 0
Регистрация: 03.06.2014
Сообщений: 5
04.06.2014, 01:26  [ТС] #6
zss, нет, не забыл. счел не нужным говорить о том, что я его указал, ведь тогда первой шла бы ошибка о неизвестном идентификаторе
0
alsav22
5425 / 4820 / 442
Регистрация: 04.06.2011
Сообщений: 13,587
04.06.2014, 01:50 #7
Лучший ответ Сообщение было отмечено автором темы, экспертом или модератором как ответ
C++
1
2
3
4
5
struct tree
{
    char inf[5];
    std::list <tree*> lt;
};
Добавлено через 1 минуту
В какой среде не компилируется?
1
Миниатюры
Как реализовать структуру  
densmoke
0 / 0 / 0
Регистрация: 03.06.2014
Сообщений: 5
04.06.2014, 02:59  [ТС] #8
alsav22, хм. у меня Visual Studio 2013 Ultimate Update 2.
Вот странно. Пробовал раньше прописать std::, так он сказал, что list не является его членом. а сейчас почему то все скомпиллировалось. чудеса да и только

Добавлено через 16 минут
Теперь при таких операциях
C++
1
2
tree* t;
t->inf="";
Такая ошибка
Код
	1	IntelliSense: выражение должно быть допустимым для изменения левосторонним значением	\\densmoke-nb\документы\Visual Studio 2013\Projects\yacc — копия (2)\yacc\ytab.h	48	3	yacc
в то время как такое разрешено
C++
1
char str[255]="";
И к тому же почему то в функцию sprint_s ничего не передается при таком вызове
C++
1
sprint_s(t->inf,"%s",str);
0
alsav22
5425 / 4820 / 442
Регистрация: 04.06.2011
Сообщений: 13,587
04.06.2014, 12:09 #9
Цитата Сообщение от densmoke Посмотреть сообщение
Пробовал раньше прописать std::, так он сказал, что list не является его членом
Так пишет, когда #include <list> нет.

Добавлено через 1 минуту
Цитата Сообщение от densmoke Посмотреть сообщение
t->inf="";
Где вы видели, что с массивом char так можно делать?

Добавлено через 46 секунд
Цитата Сообщение от densmoke Посмотреть сообщение
в то время как такое разрешено
Разрешено при объявлении массива.

Добавлено через 1 минуту
Цитата Сообщение от densmoke Посмотреть сообщение
И к тому же почему то в функцию sprint_s
С этим сами разбирайтесь, есть стандартные функции.
0
densmoke
0 / 0 / 0
Регистрация: 03.06.2014
Сообщений: 5
04.06.2014, 16:43  [ТС] #10
ну для меня C++ все равно, что матан для школьника. вот эта запись char str[255]=""; ввела в заблуждение, что так делать можно. ну там очепятка вышла, это sprintf_s, так то стандартная функция из stdio.h. понятия не имею, чем еще записывать в массив
0
alsav22
5425 / 4820 / 442
Регистрация: 04.06.2011
Сообщений: 13,587
04.06.2014, 16:56 #11
Цитата Сообщение от densmoke Посмотреть сообщение
sprintf_s, так то стандартная функция
sprintf() - стандартная, а sprintf_s() - придумка microsoft.
0
04.06.2014, 16:56
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
04.06.2014, 16:56
Привет! Вот еще темы с ответами:

Реализовать структуру данных «сбалансированное дерево поиска» - C++
Добрый вечер. Дали задание, не до конца ясна реализация, не могли бы подбросить пару шаблонов, или готовых решений, чтобы посмотреть на...

Реализовать структуру данных стек, содержащую следующие методы: - C++
Реализовать структуру данных стек, содержащую следующие методы: добавить элемент в стек, удалить элемент из стека, получить значение с...

Реализовать ввод данных в структуру и поиск информации в ней - C++
1. Описать класс ORDER, реализующий однонаправленный линейный список для работы со следующими данными: • фамилия налогоплательщика; ...

Описать структуру с именем airport. Реализовать сортировку записей - C++
Всем привет. Собственно описал структуру, данные в массив тоже сделал. А попросить хотел вас, помочь с написание алгоритма для вывода в...


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

Или воспользуйтесь поиском по форуму:
11
Ответ Создать тему
Опции темы

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