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

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

Войти
Регистрация
Восстановить пароль
 
Divergence
7 / 7 / 0
Регистрация: 19.06.2013
Сообщений: 174
#1

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

29.06.2013, 23:00. Просмотров 362. Ответов 2
Метки нет (Все метки)

Проблема такая: хочу в структуре одним из элементов сделать класс.
Проблема в том, что эта структура задается в самом начале текста программы, а определение класса идет уже ниже.
Трудности создает то, то эта структура используется в самом классе как 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 по умолчанию
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
29.06.2013, 23:00
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Как использовать собственный класс в структуре struct до определения самого класса в тексте программы (C++):

Составить программу для определения самого длинного слова в тексте, в котором нет цифр. - C++
Составить программу для определения самого длинного слова в тексте, в котором нет цифр.

Оставить все как есть || использовать парсер xml || или использовать struct - C++
Собственно имеется код... #include <io.h> #include <string> #include <vector> #include <fstream> #include <iomanip> #include...

Определить класс-строку. В класс включить два конструктора: для определения класса строки строкой символов и п - C++
Определить класс-строку. В класс включить два конструктора: для определения класса строки строкой символов и путем копирования другой...

Как правильно использовать struct? - C++
Написал небольшую, глупенькую программку, но столкнулся с проблемой заполнения структуры. Если kube.size вводит, то kube.color программа...

ООП в VBA: Можно ли использовать методы класса внутри его самого - VBA
Интересует: является ли это хорошим стилем программирования, или это приведет к проблемам? Извините, пожалуйста, если плохо...

Как использовать struct.pack()? - Python
Повторяю пример из книги Лутца >>> F = open(‘data.bin’, ‘wb’) # Открыть файл для записи в двоичном режиме >>> import struct >>>...

2
iv-a
15 / 15 / 0
Регистрация: 25.06.2013
Сообщений: 63
29.06.2013, 23:16 #2
напишите перед структурой вот это:
C++
1
class ClassBufer;
я точно не знаю как это называется. но работает
1
Divergence
7 / 7 / 0
Регистрация: 19.06.2013
Сообщений: 174
29.06.2013, 23:25  [ТС] #3
Цитата Сообщение от iv-a Посмотреть сообщение
напишите перед структурой вот это:
C++
1
class ClassBufer;
я точно не знаю как это называется. но работает
Спасибо большое!
Это было так очевидно, а я не догадался =(
Теперь все работает)))
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
29.06.2013, 23:25
Привет! Вот еще темы с ответами:

Известно число учеников в каждом из 20 классов школы. На сколько численность самого большого класса превышает численность самого маленького класса? - Turbo Pascal
Известно число учеников в каждом из 20 классов школы. На сколько численнось самого большого класса (по количеству учеников) превышает...

Как правильно вызвать метод класса внутри самого класса? - PHP ООП
Здравствуйте. Собственно тема прописана в заголовке: как правильно вызвать метод класса внутри самого класса? Насколько я знаю, для...

Как использовать собственный метод в LINQ - LINQ
Всем привет! Есть код: countNews_Period = db.news.Where(n => Source.GetRegionId(n.autor) == id_region).Count(); Запрос должен...

Собственный класс String, неправильный перегруз операции "=", некорректное восприятие полем класса инициализир - Visual C++
class String { int const *MAX; char *str; public: String(); void Set(char*); void Print(); ~String(); void...


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

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

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