А как в ue4 решить проблемы перекрёстных ссылок? В ванильном

С++ я бы всё что надо запихал бы в базовый класс, а пото унаследовался бы от него теми классами что используют общий функционал. а в рамках движка я не могу этого сделать. Так например мне нужно в пешке указать умолчальный AIController (это не обязательно ибо это я делаю и в БП унаследованном классе, но хотелось бы сделать так чтобы камеру тупо можно было унаследовать и она работала из коробки) А в контроллере у меня уже еслть связка с пешкой ибо он ей управляет. Как быть?

11 ответов

21 просмотр

в С++ есть pragma once

Dethlord
в С++ есть pragma once

да,но он там по умолчанию стоит при создании h файлов, но всё равно не работает

Dethlord
в С++ есть pragma once

pragma once ршает другую проблему forward declaration решает проблему циклических зависимостей хедеров в некоторых случаях

@norlin_ru @a_blintsov @SayHelloToGrux

Используйте Godot ибо он приятный
@norlin_ru @a_blintsov @SayHelloToGrux

Тебе же написали выше про forward declaration

Aleksei DTG
Тебе же написали выше про forward declaration

если речь про extern что чтот оно не хочет работать ибо ошибку выдаёт

при экстерне вроде переменные нельзя определять там как заготовка функции пишется

Читаю Роберта Мартина: https://www.litres.ru/robert-s-martin/chistyy-kod-sozdanie-analiz-i-refaktoring-6444478/ https://www.litres.ru/robert-s-martin/chistaya-arhitektura-iskusstvo-razrabotki-program-39113892/ И судя по написанному там, если образовалась цепочка циклической зависимости - то это явная проблема архитектуры программы. Надо разрывать цикл. Добавить где-нибудь "интерфейс", и чтобы оба класса включали этот интерфейс, а непосредственно друг о друге ничего не знали. Тогда получается, что если и был цикл, то он разрывается.

Юрий Кабак
Читаю Роберта Мартина: https://www.litres.ru/rober...

создать интерфейс между контроллером и пешкой? хм... не задумывался о таком, если с этой возможностью не получится. то попробую интерфейсом сделать

Dethlord
при экстерне вроде переменные нельзя определять та...

да я пробывал сразу без названия, не прокатило и потому подставил

Используйте Godot ибо он приятный
да я пробывал сразу без названия, не прокатило и п...

пишут что экстернить класс нельзя, только переменные и функции.

Похожие вопросы

Обсуждают сегодня

Гайс, вопрос для разносторонее развитых: читаю стрим с юарта, нада выделять с него фреймы с определенной структурой, если ли чо готовое, или долбаться с ринг буффером? нада у...
Vitaly
9
Недавно Google Project Zero нашёл багу в SQLite с помощью LLM, о чём достаточно было шумно в определённых интернетах, которые сопровождались рассказами, что скоро всех "ибешни...
Alex Sherbakov
5
длина пакета фиксированная, или меняется?
Okhsunrog
7
Вот еще странный косяк, подскажите как бороться. Я git clone сделал себе всего embassy и примеры там запускаю. Всё хорошо. Но вот решил в cargo.toml зависимости не как в приме...
Lukutin R2AJP
5
А в каком формате фреймы? Сам формат сейчас придумываешь, или что-то готовое нужно распарсить?
Okhsunrog
5
https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_h_common.erl#L174 https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_olp.erl#L76 15 лет назад...
Maksim Lapshin
20
Добрый вечер, Пока не совсем понимаю как наладить общение между телеграм ботом и ПО для работы с сим боксом. По самому боту так понял: - Нужен некий баланс, который можно поп...
Magic
6
Всем привет, нужна как никогда, нужна помощь с IO в загрузчике. Пишу в code16 после установки сегментных регистров, пишу вывод символа. Пробовал 2 варианта: # 1 mov $0x0E, %a...
Shadow Akira
14
Раз начали говорить про embassy, то присоединюсь со своими парой вопросов. 1) Есть ли сопоставимые аналоги для асинхронного кода в emdebbed? 2) Можно ли внутри задач embassy ...
NI_isx
6
сделал сайт, прикрутил в боте сайт, и виджет логина. как автоматически логинить пользователя в аккаунт(телеграм), при входе с бота?
Александра Чернивецкая
5
Карта сайта