и в каждом вручную указать какой массив использовать... хм... я так и собирался делать, но мне показалось что-то нелогично, я уже запутался, и даже не могу понять что конкретно показалось нелогичным.
а нелогичным мне кажется то что нужно спаренные классы вести, они друг без друга не работают. а разница между классами реальная только в типе классов массива обьектов. и на каждуый новый тип "конфигураций" прийдется создавать по два класса. это будет работать... но все равно как-то странно - у нас класс посредник который лишь ограничевает заполнение массива своими наследниками... и больше никаких других функций не выполняет. вот эти классы посредники я и хочу в одном классе сделать.
и еще вопрос) в проекте создается одна папка под С++ классы без возможности создавать в ней вложенные папки. Каким образом в понятном виде хранить множество ++ класов если они сваленны в одну папку? нет проблем когда их 10-20 но когда их станет 100, это будет жестко искать там один нужный класс. Как организовывается все это дело.
ПС: и в случае чего не стеснятейсь указывать если я какую-то чушь пишу :) а то я могу, да)
_________________ we need to go deeper
Я оперировал сотней классов в Ботологии ))) Выходил из положения именованием классов. Есть некий базовый класс, его наследник несет часть имени родителя и через постфикс второе имя, например. OS_Character, его наследник OS_Character_MOB и OS_Character_Player, потом OS_Character_MOB_Engeneer так далее. Имена классов становятся длиннее, но если придумать именование абривиатурами то можно его сократить. К томуже вложения не бывают глубокими, или нужно придумать так чтобы не было сильно больших вложений чтобы имена не были очень большими.
ТОгда классы располагаются рядом, система именования понятна, расположение классов в алфавитном порядке.
DanzigFun , ну я смотрю что в VS можно организоваться, это в редакторе никак не отбражается конечно, но тем не менее уже немало.
_________________ we need to go deeper
Легко все делается, например в одном из моих модулей вот так все организовано:
если вы перемещаете файл в подпапку, то подключать заголовочный файл необходимо
Код:
#include "[Ваша подпапка]\имя хедера"
а если хотите как и прежде напрямую подключать, то необходимо добавлять в Builds.cs строки PrivateIncludePaths и PublicIncludePaths К примеру я хочу добавить Private папку моего модуля:
Код:
PrivateIncludePaths.AddRange( new string[] { "RidersUMG/Private" });
тогда можно использовать хедер без указания подпапки.