Include для 2-х классов со взаимными переменными
От: gde11  
Дата: 30.04.05 06:29
Оценка:
Что-то запутался.
Есть 2 класса — A и B. Для каждого класса 2 файла (*.cpp и *.h).
В классе A должна быть переменная типа B, в классе B должна быть переменная типа A.
Что за инклуды я должен сделать?
Пишу так:


#pragma once
#include "B.h"
class A
{
    B *b;
};


и


#pragma once
#include "A.h"
class B
{
    A *a;
};

Компилятор ругается:
A.h: error C2143: syntax error : missing ';' before '*'
Другие ошибки аналогичны.
Заранее спасибо.
Re: Include для 2-х классов со взаимными переменными
От: Aleksey Karavan Россия  
Дата: 30.04.05 07:00
Оценка:
Здравствуйте, gde11, Вы писали:

попробуй так


class B;
class A
{
    B *b;
};


и


class A;
class B
{
    A *a;
};
Re: Include для 2-х классов со взаимными переменными
От: Mr.Chipset Россия http://merlinko.com
Дата: 30.04.05 10:33
Оценка:
Здравствуйте, gde11, Вы писали:

G>Что-то запутался.

G>Есть 2 класса — A и B. Для каждого класса 2 файла (*.cpp и *.h).
G>В классе A должна быть переменная типа B, в классе B должна быть переменная типа A.

Тут уже сказали как это реализовать, но я добавлю пять копеек. Насколько мне известно — когда два классы ссылаются друг на друга это плохой дизайн.
... <<А писал я весь этот бред на RSDN@Home 1.1.4 beta 5 rev. 411, под звуки Алиса — Мое поколение >>
"Всё что не убивает нас, делает нас сильнее..."
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.