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

Как использовать собственный класс в структуре struct до определения самого класса в тексте программы - C++

Восстановить пароль Регистрация
 
Divergence
 Аватар для Divergence
7 / 7 / 0
Регистрация: 19.06.2013
Сообщений: 174
29.06.2013, 23:00     Как использовать собственный класс в структуре struct до определения самого класса в тексте программы #1
Проблема такая: хочу в структуре одним из элементов сделать класс.
Проблема в том, что эта структура задается в самом начале текста программы, а определение класса идет уже ниже.
Трудности создает то, то эта структура используется в самом классе как public переменная.
Чтобы было понятно вот код:

C++
1
2
3
4
5
6
struct PARAMETRS
{
    int ID; // ID объекта к которому принадлежит вершина
    int adress; // Номер точки в общем массиве вершин
    ClassBufer* balk; //Определение указателя на класс
};
Само определение класса ниже по коду:

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
class ClassBufer // БУФЕР ФИЗИЧЕСКИХ ОБЪЕКТОВ НА ЭКРАНЕ
{
private:
            
public:
    int C_N; //Число вершин в буфере
    PARAMETRS* C_PARAMETRS;
    CUSTOMVERTEX* C_OBJ;
    ClassBufer(int n); //Конструктор, создаем буфер на n вершин
    ~ClassBufer(); //Деструктор
static void AddObject(ClassBufer* clbf, CUSTOMVERTEX* obj, int id,int begin,int count);
static void CopyClassBufer(ClassBufer* to, ClassBufer* from, int N);
};
Отсюда вопрос: как мне исхитриться, не плодя лишние структуры, чтобы добавить экземпляр класса в описание структуры? В случае с функциями мы используем прототип, а что делать с классом - я не знаю...
Буду благодарен за любую помощь! Спасибо =)

p.s. Вот ошибки, которые выдает компилятор:
error C2143: синтаксическая ошибка: отсутствие ";" перед "*"
error C4430: отсутствует спецификатор типа - предполагается int. Примечание. C++ не поддерживает int по умолчанию
error C4430: отсутствует спецификатор типа - предполагается int. Примечание. C++ не поддерживает int по умолчанию
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
29.06.2013, 23:00     Как использовать собственный класс в структуре struct до определения самого класса в тексте программы
Посмотрите здесь:

C++ при перезагрузке оператора для класса не получается использовать имя переменной такое же,как в описании класса
C++ Составить программу для определения самого длинного слова в тексте, в котором нет цифр.
C++ Какими способами можно использовать функции класса B, как параметры функции Sub класса А?
Как правильно впихнуть и использовать перечисления в структуре? C++
Разработать программу, осуществляющую поиск самого короткого и самого длинного слова во вводимом тексте C++
C++ delete внутри класса для самого класса
Собственный класс итератора C++
STL и собственный класс C++

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
iv-a
 Аватар для iv-a
15 / 15 / 0
Регистрация: 25.06.2013
Сообщений: 63
29.06.2013, 23:16     Как использовать собственный класс в структуре struct до определения самого класса в тексте программы #2
напишите перед структурой вот это:
C++
1
class ClassBufer;
я точно не знаю как это называется. но работает
Divergence
 Аватар для Divergence
7 / 7 / 0
Регистрация: 19.06.2013
Сообщений: 174
29.06.2013, 23:25  [ТС]     Как использовать собственный класс в структуре struct до определения самого класса в тексте программы #3
Цитата Сообщение от iv-a Посмотреть сообщение
напишите перед структурой вот это:
C++
1
class ClassBufer;
я точно не знаю как это называется. но работает
Спасибо большое!
Это было так очевидно, а я не догадался =(
Теперь все работает)))
Yandex
Объявления
29.06.2013, 23:25     Как использовать собственный класс в структуре struct до определения самого класса в тексте программы
Ответ Создать тему
Опции темы

Текущее время: 00:05. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru