Модераторы: bsa
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Взаимодополняющие структуры и список. 
V
    Опции темы
Avaj
  Дата 20.4.2009, 14:37 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 212
Регистрация: 14.7.2008
Где: Владивосток.

Репутация: 1
Всего: 3



Имеются 2 файла:


Код

//AB_Unit.h

#include <list>

struct B;

struct A{
    B *b;
};

struct B{
    list<A> a_list;//ошибка тут
};



  и

Код

//main.cpp

#include "AB_unit.h"

int main(){
    A a_object;
    B b_object;
    return 0;
}



И вот что-то, блин, не компилится, сообщая что:

Цитата

AB_unit.h|11|error: ISO C++ forbids declaration of `list' with no type

AB_unit.h|11|error: expected `;' before '<' token.


Что делать?


PM MAIL   Вверх
mes
Дата 20.4.2009, 14:40 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


любитель
****


Профиль
Группа: Участник Клуба
Сообщений: 7954
Регистрация: 14.1.2006

Репутация: 79
Всего: 250



std::list или using namespace std;


--------------------
PM MAIL WWW   Вверх
zim22
Дата 20.4.2009, 14:46 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


depict1
****


Профиль
Группа: Завсегдатай
Сообщений: 2682
Регистрация: 15.1.2009
Где: Украина

Репутация: 29
Всего: 69



Цитата(mes @  20.4.2009,  14:40 Найти цитируемый пост)
std::list или using namespace std;

или 
Код

using std::list;



--------------------
PM MAIL   Вверх
Avaj
Дата 20.4.2009, 14:48 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 212
Регистрация: 14.7.2008
Где: Владивосток.

Репутация: 1
Всего: 3



 smile 

А я дурак начиталя книжек, что "Никогда нельзя using namespace std в header'ах!!!" и забыл что std::list.

Спасибо.
PM MAIL   Вверх
zim22
Дата 20.4.2009, 14:50 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


depict1
****


Профиль
Группа: Завсегдатай
Сообщений: 2682
Регистрация: 15.1.2009
Где: Украина

Репутация: 29
Всего: 69



Цитата(Avaj @  20.4.2009,  14:48 Найти цитируемый пост)
 начиталя книжек, что "Никогда нельзя using namespace std в header'ах!!!"

это правда. ни в коем случае не вздумайте использовать директиву using в header'ax


--------------------
PM MAIL   Вверх
Avaj
Дата 20.4.2009, 14:52 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 212
Регистрация: 14.7.2008
Где: Владивосток.

Репутация: 1
Всего: 3



Цитата

это правда. ни в коем случае не вздумайте использовать директиву using в header'ax
, ну естественно, я ж просто забыл что list из std.
PM MAIL   Вверх
mes
Дата 20.4.2009, 15:49 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


любитель
****


Профиль
Группа: Участник Клуба
Сообщений: 7954
Регистрация: 14.1.2006

Репутация: 79
Всего: 250



Цитата(Avaj @  20.4.2009,  13:52 Найти цитируемый пост)
я ж просто забыл что list из std. 

я вот всегда удивляюсь подобного рода вопросам
Цитата

 Взаимодополняющие структуры и список.

При чем тут структуры ?! неужто при возникновении ошибки не прочитали что пишет компилятор и не попытались исправить в тестовом примере ?!

Цитата(Avaj @  20.4.2009,  13:37 Найти цитируемый пост)
forbids declaration of `list' with no type

написано же, что не видит типа.
Если не понимаете в чем дело, почему для начала не попытаться сделать тестовый бросок
Код

int main 
{  list <int> l;
}

если опять выдает ошибку, то глянуть в справочник, например сюда http://www.cplusplus.com/reference/stl/list/list/
найти там пример и сравнить.
И все станет на свои места.

Из плюсов, научитесь самостоятельно решать мелкие проблемы, не будете зависимы от желания и правильности ответов форумчан,
а также (пользуясь гуглем и справочником) поймете как надо правильно задавать вопросы для  темы в которой действительно бы не смогли бы разобраться в одиночку.
И как итог почувствуете себя уверенным в своих силах программистом.

P.S. Ничего личного, но форумчан очень путает и разочаровывает несоответсвие названия тем их содержимому, а также не приложение самостоятельных усилий для решения мелких проблем.
Представьте заходите в магазин с названием "крутая обувь из италии",  а  на прилавке только дешевые носки.
Успехов  smile 




Это сообщение отредактировал(а) mes - 20.4.2009, 16:05


--------------------
PM MAIL WWW   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "C/C++: Для новичков"
JackYF
bsa

Запрещается!

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами

  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, JackYF, bsa.

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | C/C++: Для новичков | Следующая тема »


 




[ Время генерации скрипта: 0.0466 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.