Я разработал игру на C ++, OpenGL и OpenAL и пытаюсь встроить ее в комплект приложений, а не в исполняемый файл командной строки. Я скопировал и вставил код из Относительные пути, не работающие в Xcode C ++ вверху моего файла main.cpp (также попробовал его в App_Prefix.pch), и я получил ряд синтаксических ошибок. Я аннотировал код с ошибками:
#ifdef __APPLE__
#include "CoreFoundation/CoreFoundation.h"
#endif
// ----------------------------------------------------------------------------
// This makes relative paths work in C++ in Xcode by changing directory to the Resources folder inside the .app bundle
#ifdef __APPLE__
CFBundleRef mainBundle = CFBundleGetMainBundle();
CFURLRef resourcesURL = CFBundleCopyResourcesDirectoryURL(mainBundle);
char path[PATH_MAX];
if (!CFURLGetFileSystemRepresentation(resourcesURL, TRUE, (UInt8 *)path, PATH_MAX)) // Error: expected unqualified-id before 'if'
{
// error!
}
CFRelease(resourcesURL); // error: expected constructor, destructor or type conversion before '(' token
chdir(path); // error: expected constructor, destructor or type conversion before '(' token
std::cout << "Current Path: " << path << std::endl; // error: expected constructor, destructor or type conversion before '<<' token
#endif
Его код мне подходит, и многие люди поблагодарили его за это в своем посте. Что-то я делаю не так? Должен ли я создать файл специально для этого кода и импортировать его прежде всего?