Форум программистов, компьютерный форум, киберфорум
Visual C++
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 5.00/4: Рейтинг темы: голосов - 4, средняя оценка - 5.00
0 / 0 / 0
Регистрация: 02.02.2017
Сообщений: 4

Не могу использовать переменные вышестоящего класса в нижестоящем

02.02.2017, 09:41. Показов 808. Ответов 1
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Столкнулся с такой проблемой, что не могу использовать переменные вышестоящего класса в нижестоящем, т.к. компилятор при чтении кода первого класса ещё не знает про существование следующего, чьи переменные я уже пустил в обиход, что и является причиной ошибки. Как сделать так, чтобы вышестоящий класс мог спокойно использовать нижестоящих класс, при этом не двигая их вниз или вверх? (p.s. строчка перед классов Player моя попытка как-бы дать компилятору понять, что где-то там есть такой класс)
C++ (Qt)
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
34
35
36
37
38
#include <iostream>
using namespace std;
 
class Enemy{
public: 
    float ex;
    Enemy(float e){
        ex = e;
    }
    };
class Bullet;
class Player{
public: float xx;
        void sum(Enemy e, Bullet b){
            xx = e.ex + b.bx;
            cout << xx;
        }
 
};
class Bullet{
public: 
    float bx;
    
Bullet(float b){
    bx = b;
}
};
 
 
int main()
{
    bool a = 1;
    Enemy e1(1.25);
    Bullet b1(1.75);
    Player p1;
    p1.sum(e1, b1);
    return 0;
}
Ошибки вот такие:
Ошибка 1 error C2027: использование неопределенного типа "Bullet" c:\проект1\проект1\main.cpp 18 1
Ошибка 2 error C2228: выражение слева от ".bx" должно представлять класс, структуру или объединение
Обе эти ошибки относятся к строке xx = e.ex + b.bx;
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
02.02.2017, 09:41
Ответы с готовыми решениями:

Как динамической библиотеки использовать переменные класса?
Здравствуйте. У меня есть динамическая библиотека StrategyCod с функцией void StrategyCod2() { qDebug()&lt;&lt;&quot;Library...

Не могу понять как использовать переменные
Не могу понять как использовать переменные html, files_path после отработки функции $('.upload_files').on( 'click', function( event ){...

Не могу инициализировать переменные класса
Доброго времени суток, проблема такая: есть функция getscore (строки 92-106), всё вроде работает, ошибок нет, но в массиве score всегда...

1
548 / 355 / 120
Регистрация: 17.08.2014
Сообщений: 1,351
07.02.2017, 21:51
чтобы не было такой ошибки необходимо описание классов делать в файл H а реализацию в файлах cpp. Либо делайте так чтобы описание класса, а в вашем случае еще и реализация была выше чем использование. На текущий момент класс который выше не понимает что вы пытаетесь сделать т.к реализация будет собрана позже чем использование.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
07.02.2017, 21:51
Помогаю со студенческими работами здесь

не могу использовать методы класса
В общем только что добралась до изучения классов .придумала класс собака, к котором есть координаты собаки и кол-во костей которое есть у...

Не могу использовать функцию из другого класса через ->
Не понимаю,как нужно правильно это записать. Тут это работает: int Menu::FindName(List&lt;Smartphones&gt; lst) { ...

Не могу использовать переменную с одного класса в другом!
Проблема следующая. Есть три класса Первый главный public class LaunchUrlIndicator { public static void main(String args) { ...

Cannot be resolved to a type. Не могу создать объект класса , и использовать его методы
Проблема в том что в главном файле я не могу создать объект класса SampleServerClass. SV1 компилятор видит как неинициолизорованную...

Переменные экземпляра, класса, константы и переменные readonly
Как эту задачу записать в C#? Переменные экземпляра, класса, константы и переменные readonly: – Ф.И.О., – должность, – базовый...


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

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Новые блоги и статьи
Знаешь почему 90% людей редко бывают счастливыми?
kumehtar 14.04.2026
Потому что они ждут. Ждут выходных, ждут отпуска, ждут удачного момента. . . а удачный момент так и не приходит.
Фиксация колонок в отчете СКД
Maks 14.04.2026
Фиксация колонок в СКД отчета типа Таблица. Задача: зафиксировать три левых колонки в отчете. Процедура ПриКомпоновкеРезультата(ДокументРезультат, ДанныеРасшифровки, СтандартнаяОбработка) / / . . .
Настройки VS Code
Loafer 13.04.2026
{ "cmake. configureOnOpen": false, "diffEditor. ignoreTrimWhitespace": true, "editor. guides. bracketPairs": "active", "extensions. ignoreRecommendations": true, . . .
Оптимизация кода на разграничение прав доступа к элементам формы
Maks 13.04.2026
Алгоритм из решения ниже реализован на нетиповом документе, разработанного в конфигурации КА2. Задачи, как таковой, поставлено не было, проделанное ниже исключительно моя инициатива. Было так:. . .
Контроль заполнения и очистка дат в зависимости от значения перечислений
Maks 12.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2. Задача: реализовать контроль корректности заполнения дат назначения. . .
Архитектура слоя интернета для сервера-слоя.
Hrethgir 11.04.2026
В продолжение https:/ / www. cyberforum. ru/ blogs/ 223907/ 10860. html Знаешь что я подумал? Раз мы все источники пишем в голове ветки, то ничего не мешает добавить в голову такой источник, который сам. . .
Подстановка значения реквизита справочника в табличную часть документа
Maks 10.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2. Задача: при выборе сотрудника (справочник Сотрудники) в ТЧ документа. . .
Очистка реквизитов документа при копировании
Maks 09.04.2026
Алгоритм из решения ниже применим как для типовых, так и для нетиповых документов на самых различных конфигурациях. Задача: при копировании документа очищать определенные реквизиты и табличную. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru