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

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

Войти
Регистрация
Восстановить пароль
 
ninja2
231 / 187 / 7
Регистрация: 26.09.2012
Сообщений: 2,018
Завершенные тесты: 1
#1

Не компилируется программа - C++

01.04.2013, 03:56. Просмотров 564. Ответов 2
Метки нет (Все метки)

Здорова!
Не компилируется программа:
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
#include <iostream>
using std::cout;
using std::endl;
 
class class1 //базовый класс для class1 и class2
{
public:
    virtual void f( class1 a, class1 b){}
};
 
class class2 : public class1
{
public:
    virtual void f(class2 a, class2 b){}
    virtual void f(class2 a, class3 b){}
};
 
class class3 : public class1
{
public:
    virtual void f(class3 a, class3 b){}
    virtual void f(class3 a, class2 b){}
};
 
 
 
int main()
{
    
    
    return 0;
}
Выдает ошибку:
test5.cpp:15:27: ошибка: «class3» не был декларирован
Я добавил строчку перед class class2 : public class1
class class3;
Опять пытаюсь скомпилировать и снова ошибка:
test5.cpp: В функции-члене «virtual void class2::f(class2, class3)»:
test5.cpp:15:15: ошибка: «b» has incomplete type
test5.cpp:10:7: ошибка: forward declaration of «struct class3»


Кода я добавляю перед класс два определение класса class3, то выдает туже ошибку типо нужно определить заранее класс class2 уже.
Как же быть?
Это ж вроде и есть двойная диспетчеризация? Токо она никак не компилируется.

Пробовал и разделно скомпилировать ничего тоже не получается. Те же самые ошибки.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
01.04.2013, 03:56
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Не компилируется программа (C++):

Программа компилируется в Borland 6.0 но не компилируется в Visual Studio 2008 - C++
Ета програма компилируетса в борланде 6.0 но не компилируетса в Visualstudio 2008 и в борланде 10-м почему? #include&lt;iostream&gt; ...

Первая программа. Код не компилируется и не запускается программа. - C++
Первая программа, первая ошибка Здравствуйте! Решил учить С++. Скачал книгу Programming: Principles and Practice Using C++, Бьерн...

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

Не компилируется программа - C++
------ Построение начато: проект: Rapid Roll, Конфигурация: Debug Win32 ------ Компиляция... raiders3d.cpp c:\rapid...

Программа не компилируется - C++
Установил Borland С+++ 5,5 в папку C:\BCC, в папке bin как положено создал bcc32.cfg и link32.cfg как полагается с соответствующим...

Не компилируется программа - C++
Скпомпилируйте, у меня одной оно не так как надо работает??? # include &lt;iostream&gt; # include &lt;iomanip&gt; # include &lt;cmath&gt; #...

2
Croessmah
Эксперт CЭксперт С++
13424 / 7578 / 856
Регистрация: 27.09.2012
Сообщений: 18,665
Записей в блоге: 3
Завершенные тесты: 1
01.04.2013, 03:59 #2
А так?
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>
using std::cout;
using std::endl;
 
class class3;
class class1 //базовый класс для class1 и class2
{
public:
    virtual void f( class1 b){}
};
 
class class2 : public class1
{
public:
    virtual void f(class2 a, class2 b){}
    virtual void f(class2 a, class3 *b){}
};
 
class class3 : public class1
{
public:
    virtual void f(class3 a, class3 b){}
    virtual void f(class3 a, class2 b){}
};
 
 
 
int main()
{
    
    
    return 0;
}
1
ninja2
231 / 187 / 7
Регистрация: 26.09.2012
Сообщений: 2,018
Завершенные тесты: 1
01.04.2013, 04:05  [ТС] #3
так да.
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
01.04.2013, 04:05
Привет! Вот еще темы с ответами:

Не компилируется программа - C++
Здравствуйте. Цель - откомпилировать программу и запустить на WinXP. Проблема в том, что с определенными настройками проект либо...

Не компилируется программа - C++
#include &quot;StdAfx.h&quot; #include &quot;Line.h&quot; Line::Line(Point* start, Point* end) { this-&gt;Start = start; this-&gt;End = end; } ...

Не компилируется программа - C++
Написал программу для вычисления корней квадратного уравнения. С языком знаком целых 2 пары, само собой она неправильная и по-этому не...

Не компилируется программа - C++
Привет. Прошу помочь, если это конечно возможно, не компилируется этот код в dev cpp, версия 5.11. Подскажите, что не так. Выдает такую...


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

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

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