Genious zei:
ik vond die aanvullijstjes toch wel redelijk handig, ook nen goeien helpfile (moet niet echt MSDN evenaren, zo veeleisend ben ik ook niet) is handig voor mensen lijk ik.
zijn er overigens belangrijke verschillen tussen linux <-> windows c++? ik zie bvb dat die standaard header vanuit visual c++ niet standaard is in linux
Standaard header? Bedoel je stdafx.h? Die stdafx is enkel gebruikelijk in Visual C++, das zeker geen standaard.
Maar voor de rest zou er géén verschil mogen zijn tussen een ANSI C++ in Windows en een ANSI C++ in linux. Het enige wat natuurlijk niet werkt in Linux is de hele WINAPI, maar dat had je zelf waarschijnlijk wel reeds door.
Ik gebruik bvb OpenGL, SDL en STL in m'n engine. Daardoor kan ik zonder enig probleem alle sourcefiles porteren naar Linux met slechts weinig aanpassingen. Als je het goed maakt, dan moet je enkel wat headers aanpassen, zoals deze:
Code:
/**
* Platform settings.
* See what platform the compiler runs from.
*/
#if defined( __WIN32__ ) || defined ( _WIN32 )
#define ALTERNOVA_PLATFORM PLATFORM_WIN32
#elif defined ( __APPLE_CC__ )
#define ALTERNOVA_PLATFORM PLATFORM_APPLE
#else
#define ALTERNOVA_PLATFORM PLATFORM_LINUX
#endif
/**
* Compile type settings.
* This changes the compilation options. There are three options available:
* - ALTERNOVA_TYPE_DIRECT_USER: AlterNova compiles together with its client app.
* - ALTERNOVA_TYPE_LIBRARY_HOST: AlterNova compiles as a library (static or linked).
* - ALTERNOVA_TYPE_LIBRARY_CLIENT: AlterNova is imported as a library and was already compiled.
*/
#if ALTERNOVA_PLATFORM == PLATFORM_WIN32
// windows programming
#if ALTERNOVA_COMPILE_TYPE == ALTERNOVA_TYPE_LIBRARY_HOST
#define _AnExport_ __declspec( dllexport )
#elif ALTERNOVA_COMPILE_TYPE == ALTERNOVA_TYPE_LIBRARY_CLIENT
#define _AnExport_ __declspec( dllimport )
#elif ALTERNOVA_COMPILE_TYPE == ALTERNOVA_TYPE_DIRECT_USER
#define _AnExport_
#else
#define _AnExport_
#endif
#else
// I have no clue ... yet ...
#define _AnExport_
#endif