powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / C++ [игнор отключен] [закрыт для гостей] / Туплю?
13 сообщений из 13, страница 1 из 1
Туплю?
    #33610226
Фотография Cerebrum
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
В последнее время что-то туплю не по детски. Что я делаю не так?
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
#pragma once
#include "class1.h"

class CClass1;

class AFX_EXT_CLASS CClass2 : public CClass1
{
public:
    DECLARE_DYNCREATE(CClass2);
.
.
...
};

компилятор орет, что

error C2504: 'CClass1' : base class undefined

в class1.h вроде тоже все в порядке

Код: plaintext
1.
2.
3.
4.
5.
class AFX_EXT_CLASS CClass1 : public CClass3
{
public:
	DECLARE_DYNCREATE(CClass1);
...
};
...
Рейтинг: 0 / 0
Туплю?
    #33610398
yamapikarya
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
ну не пиши тогда class CClass1;
...
Рейтинг: 0 / 0
Туплю?
    #33610579
Фотография Cerebrum
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
yamapikaryaну не пиши тогда class CClass1;
в том то все и дело, что вроде как должно работать и без такого объвления класса, но что с ним, что без него толку мало.
...
Рейтинг: 0 / 0
Туплю?
    #33610683
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А если убрать (временно) AFX_EXT_CLASS и DECLARE_DYNCREATE?
...
Рейтинг: 0 / 0
Туплю?
    #33610993
Фотография Cerebrum
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
maytonА если убрать (временно) AFX_EXT_CLASS и DECLARE_DYNCREATE?
тоже не помогает, это даже к лучшему, т.к без них код не будет работать. Эти классы являются экспортируемыми, так что мне без этих определений нельзя.
...
Рейтинг: 0 / 0
Туплю?
    #33611023
Станислав C.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
CerebrumВ последнее время что-то туплю не по детски. Что я делаю не так?
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
#pragma once
#include "class1.h"

class CClass1;

class AFX_EXT_CLASS CClass2 : public CClass1
{
public:
    DECLARE_DYNCREATE(CClass2);
.
.
...
};

компилятор орет, что

error C2504: 'CClass1' : base class undefined

в class1.h вроде тоже все в порядке

Код: plaintext
1.
2.
3.
4.
5.
class AFX_EXT_CLASS CClass1 : public CClass3
{
public:
	DECLARE_DYNCREATE(CClass1);
...
};

Итак, компилятор говорит о неопределенном базовом классе.
У тебя наследование идет от CClass3. А сам CClass3 где описан? И описан ли вообще?
...
Рейтинг: 0 / 0
Туплю?
    #33611256
Фотография Cerebrum
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
CClass3 (он же CQControlBar) прописан следующим образом

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
#pragma once

class CQControlBar;

//GLOBALS
typedef CArray <CQControlBar*, CQControlBar*> CQControlBarVector;
typedef CArray <CControlBar*,  CControlBar*>  MfcControlBarVector;

class AFX_EXT_CLASS CQControlBar : public CControlBar
{
public:
	DECLARE_DYNCREATE(CQControlBar);
	CQControlBar();
	virtual ~CQControlBar();
......
};
...
Рейтинг: 0 / 0
Туплю?
    #33611387
pandrew
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Убери строку class CClass1;
Если ты считаешь, что все описано "class1.h", то зачем она нужна.
...
Рейтинг: 0 / 0
Туплю?
    #33611427
Фотография Cerebrum
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
pandrewУбери строку class CClass1;
Если ты считаешь, что все описано "class1.h", то зачем она нужна.
убрал уже
...
Рейтинг: 0 / 0
Туплю?
    #33612345
Фотография MasterZiv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Cerebrum yamapikaryaну не пиши тогда class CClass1;
в том то все и дело, что вроде как должно работать и без такого объвления класса, но что с ним, что без него толку мало.

НЕ ДОЛЖНО работать это БЕЗ ОПРЕДЕЛЕНИЯ класса. Для того, чтобы унаследоваться от класса, он должен быть определён.
...
Рейтинг: 0 / 0
Туплю?
    #33612828
kolobok0
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
CerebrumВ последнее время что-то туплю не по детски. Что я делаю не так?....

для "расшатывания" данной ситуации сделайте следующее...
1) обьявите в одном ашнике все три класса. Потроха всех их закоментируйте... Особенно уделите внимание (чиссо)виртуальным методам. Все остальные ашники - отключите...
2) компильните - должно если не получиться, убирайте все обьявления экспорт-импорт и иже...
3) если получиться - включайте постепенно потрохи...
4) если дышит - потехонечку подключайте ашники перед этим ашником...

приводите к исходному тексту...

с уважением
(круглый)
...
Рейтинг: 0 / 0
Туплю?
    #33613026
IcyCool
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Что-то я так и не увидел объявления ССlass3

авторCClass3 (он же CQControlBar) прописан следующим образом
...
Рейтинг: 0 / 0
Туплю?
    #33613487
Фотография Cerebrum
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
проблема решена, всем спасибо за внимание, в частности Mr.kolobok0
...
Рейтинг: 0 / 0
13 сообщений из 13, страница 1 из 1
Форумы / C++ [игнор отключен] [закрыт для гостей] / Туплю?
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]