Я работаю над проектом Cocos2D-X. Я пытаюсь организовать мои файлы кода в подпапках внутри папки Classes. Папка «Classes» доступна для iOS и Android. Если я просто оставляю файлы кода в папке Classes, все работает нормально, но если я помещаю их в подпапки, я получаю все типы ошибок. Я связал подпапки в свойствах своего проекта и даже добавил подпапки в файл Android.mk, но не повезло.
Я гуглил / читал статьи и везде говорит, что вы должны хранить все классы в корневой папке «Classes». Для небольших проектов, которые могут и не быть проблемой, но по мере того, как проект становится больше, он станет кошмаром, когда нужно будет всегда бегать через одну папку, полную всех файлов кода.
Может кто-нибудь, пожалуйста, посоветуйте, если есть способ организовать файлы .h / .cpp в подпапки в проекте Cocos2D-X.
Если вы добавляете подпапки, вы также должны добавить их в #include
директивы.
Например, если ваш каталог такой:
+ Classes/
| + HomeScreen/
| | - HomeScreen.cpp
| | - HomeScreen.h
| + GameScreen/
| | - GameScreen.cpp
| | - HomeScreen.h
Ваш #include
s должно выглядеть так:
#include "HomeScreen/HomeScreen.h"#include "GameScreen/GameScreen.h"
Конечно, не зная фактических ошибок, мы не можем дать однозначного решения. Это только одна из самых распространенных ошибок, которые я видел.
XCode может автоматически добавлять такие подпапки для включения путей поиска. Но для Android вы должны обновить Android.mk вручную (хорошо, мы сделали это путем автоматического разбора * .xcodeproj и генерации Android.mk, но это немного сложное решение).
LOCAL_C_INCLUDES := \
$(LOCAL_PATH)/../ \
$(LOCAL_PATH)/../GameScreen \
$(LOCAL_PATH)/../HomeScreen
Щелкните правой кнопкой мыши папку классов в x-code и добавьте новую группу, затем перетащите в нее заголовки / код, которые вы хотите организовать, вместо создания подпапок вне xcode и перетаскивания их в папку классов.