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

Объявление и определение классов - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Определить количество отличников 1-2 курса на всех факультетах группы у которых нет отличников http://www.cyberforum.ru/cpp-beginners/thread952598.html
// Сторити масив структур, яки складаються з елементів: факультет, курс, група, призвіще студ,езаменаційна оцінка. Візначити: кількість //відміників 1-2 курса на всіх факультетах; групи у яких не...
C++ C++ не получается (на англ) Можете кто нибудь дать код Write a program that reads in the size of the side of a square and then prints a hollow square of that size out of asterisks and blanks. Your program should work for... http://www.cyberforum.ru/cpp-beginners/thread952595.html
C++ Написать программу вычисления количества печатаемых символов в файле
Помогите Написать программу вычисления количества печатаемых символов в файле. Обработать ошибки. DEV C++ Заранее спасибо!
C++ Написать программу решения квадратного уравнения. DEV C++
Помогите пожалуйста !! Написать программу решения квадратного уравнения. Корни могут быть комплексными. Установить ширину поля 10 символов, установить точность 4 цифры, заполнить вместо пробелов...
C++ Написать программу вычисления наибольшего общего делителя двух целых чисел Dev C++ 4.9.9.2 http://www.cyberforum.ru/cpp-beginners/thread952583.html
Помогите написать программу! Написать программу вычисления наибольшего общего делителя двух целых чисел. Наибольший общий делитель рекурсивно вычисляется следующим образом; GCD(m, n) is: if m mod...
C++ Площадь треугольника Помогите пожалуйста! Ошибку выдаёт в 13-14 строчках. Как правильно записать Р как функцию? Даны стороны треугольника a, b, c. Найти его площадь по формуле: sqrt( p (p-a)(p-b)(p-c)) , p –... подробнее

Показать сообщение отдельно
BESSON_off
3 / 0 / 1
Регистрация: 08.07.2013
Сообщений: 351

Объявление и определение классов - C++

11.09.2013, 19:52. Просмотров 2283. Ответов 44
Метки (Все метки)

Всем здрасти!

Имеем простецкий код:
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
class Node;
class HeadNode;
class TailNode;
class Node
{
public:
Node() {}
virtual ~Node(){}
};
 
class HeadNode : public Node
{
Node * myNext;
public:
HeadNode() {myNext = new TailNode;}
~HeadNode() {delete myNext;}
};
 
class TailNode : public Node
{
TailNode() {}
~TailNode() {}
};
 
int main()
{
return 0;
}
Если скомпилить этот код, то нам покажут ошибку "TailNode: нет подходящего конструктора".
Если переставить местами классы TailNode и HeadNode, то программа заработает... Но если, после этого нам нужно добавить еще один класс, производный от Node, то нам опять придется определять, где же его расположить, чтобы он определялся до всех своих упоминаний.
Так вот - подскажите пожалуйста, как правильно объявить все классы до их определения, чтобы программа могла видеть все созданные классы, независимо от своего расположения? (так как объявил классы я "class Node;" - не помогает).
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru