Cocos2d-X Добавление подпапок в папку Classes выдает ошибки

Я работаю над проектом Cocos2D-X. Я пытаюсь организовать мои файлы кода в подпапках внутри папки Classes. Папка «Classes» доступна для iOS и Android. Если я просто оставляю файлы кода в папке Classes, все работает нормально, но если я помещаю их в подпапки, я получаю все типы ошибок. Я связал подпапки в свойствах своего проекта и даже добавил подпапки в файл Android.mk, но не повезло.

Я гуглил / читал статьи и везде говорит, что вы должны хранить все классы в корневой папке «Classes». Для небольших проектов, которые могут и не быть проблемой, но по мере того, как проект становится больше, он станет кошмаром, когда нужно будет всегда бегать через одну папку, полную всех файлов кода.

Может кто-нибудь, пожалуйста, посоветуйте, если есть способ организовать файлы .h / .cpp в подпапки в проекте Cocos2D-X.

2

Решение

Если вы добавляете подпапки, вы также должны добавить их в #include директивы.

Например, если ваш каталог такой:

+ Classes/
| + HomeScreen/
| | - HomeScreen.cpp
| | - HomeScreen.h
| + GameScreen/
| | - GameScreen.cpp
| | - HomeScreen.h

Ваш #includes должно выглядеть так:

#include "HomeScreen/HomeScreen.h"#include "GameScreen/GameScreen.h"

Конечно, не зная фактических ошибок, мы не можем дать однозначного решения. Это только одна из самых распространенных ошибок, которые я видел.

1

Другие решения

XCode может автоматически добавлять такие подпапки для включения путей поиска. Но для Android вы должны обновить Android.mk вручную (хорошо, мы сделали это путем автоматического разбора * .xcodeproj и генерации Android.mk, но это немного сложное решение).

 LOCAL_C_INCLUDES :=  \
$(LOCAL_PATH)/../ \
$(LOCAL_PATH)/../GameScreen \
$(LOCAL_PATH)/../HomeScreen
1

Щелкните правой кнопкой мыши папку классов в x-code и добавьте новую группу, затем перетащите в нее заголовки / код, которые вы хотите организовать, вместо создания подпапок вне xcode и перетаскивания их в папку классов.

0
По вопросам рекламы [email protected]