5 / 5 / 4
Регистрация: 18.11.2014
Сообщений: 81
1

Структура: error C2079: "A::myElem" использует неопределенный struct "A::B"

23.03.2016, 16:05. Показов 4884. Ответов 1
Метки нет (Все метки)

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
class A
{
public:
    struct B;
private:
    B myElem;
};
 
struct A::B
{
    int a;
    char b;
};
пишет:
error C2079: "A::myElem" использует неопределенный struct "A::B"

А зачем тогда можно объявлять структуру в классе? только для указателей на структуру? А как красиво объявить с отдельной реализацией структуру для использования в классе?
__________________
Помощь в написании контрольных, курсовых и дипломных работ, диссертаций здесь
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
23.03.2016, 16:05
Ответы с готовыми решениями:

Исправить ошибку C2079 "MiniPlayer::music" использует неопределенный class "MiniMusic"
Приветствую. Ситуация следующая - есть 2 класса, оба используют друг друга. При компиляции вылезает...

В зависимости от времени года "весна", "лето", "осень", "зима" определить погоду "тепло", "жарко", "холодно", "очень холодно"
В зависимости от времени года "весна", "лето", "осень", "зима" определить погоду "тепло",...

Структура «Преподаватель» с полями "ФИО", "стаж", "категория", "нагрузка"
Функция - расчёт зарплаты по нагрузке и оплате часа для определенной категории. Категория Оплата...

Для каждой строки найти слова, которые не имеют ни одного из букв: "l", "k", "r", "s" i "j"
Задано символьные строки. Строка состоит из нескольких слов (наборов символов), которые разделяются...

1
Модератор
Эксперт С++
12446 / 10010 / 6025
Регистрация: 18.12.2011
Сообщений: 26,795
23.03.2016, 18:36 2
К сожалению, это получается просто предварительное объявление структуры.
Поэтому, можно объявить указатель на нее, а экземпляр - нет.
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
class A
{
public:
    struct B;
private:
    B* myElem;
};
 
struct A::B
{
    int a;
    char b;
};
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
23.03.2016, 18:36
Помогаю со студенческими работами здесь

Реализовать классы "Воин", "Пехотинец", "Винтовка", "Матрос", "Кортик" (наследование)
Разработать программу с использованием наследования классов, реализующую классы: − воин;...

При компиляции ошибка: C2228: left of ".real",".imag" must have struct/class/union
Помогите, пожалуйста! Компилирую в VS2010... Ошибка: C2228: left of ".real",".imag" must have...

Создать класс "Книга" с полями "название книги", "количество страниц", "год издания"
Создать класс Книга поля: название книги,количество страниц,год издания методы: вычислить сколько...

Создать абстрактный класс "Издание" и производные классы "Книга", "Статья", "Электронный ресурс"
1. Создать абстрактный класс Издание с методами, позволяющими вывести на экран информацию об...


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

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

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2022, CyberForum.ru