А чем отличается код для gcc (g++?) от кода для msvc? Стандарт C++ уже отменили?
#pragma
g++ менее требователен к ;
на msvc9 не компилятся некоторые библиотеки\движки с msvc8 и иногда наоборот
вот типичный пример кода который пойдет под mingw и msvc:
#if OGRE_PLATFORM == OGRE_PLATFORM_WIN32
#define WIN32_LEAN_AND_MEAN
#include "windows.h"
INT WINAPI WinMain( HINSTANCE hInst, HINSTANCE, LPSTR strCmdLine, INT )
#else
int main(int argc, char **argv)
#endif
{
// Create application object
TutorialApplication app;
try {
app.go();
} catch( Exception& e ) {
#if OGRE_PLATFORM == OGRE_PLATFORM_WIN32
MessageBox( NULL, e.what(), "An exception has occurred!", MB_OK | MB_ICONERROR | MB_TASKMODAL);
#else
fprintf(stderr, "An exception has occurred: %s\n",
e.what());
#endif
}
return 0;
да и то в msvc9 уже приходится переписывать messageBox на messageBoxA, из-за изменения дефалтовых настроек с переходом на 9 или 8 версию