Anyone tried it, yet? Uncharacteristically for Microsoft, they've broken a few common expressions involving pointers. I was trying compiling some old code yesterday (that of course I had previously compiled with both VC++ 9.0 and GCC) and got an error on this line:
1 2 3
//std::vector<T *> buffer;
//size_t a;
buffer.insert(buffer.begin()+a+1,0); //error C2440: 'initializing' : cannot convert from 'int' to 'T *'
Maybe it's just me, but I really don't think I need the explicit cast, there. Or nullptr, for that matter.
If you're not using any clr / managed stuff : why would you ever on earth prefer compiling with VC++ instead of mingw (gcc) ?
At the compiler level, there's indeed very little difference. The debugger, however, is superior to anything GNU has to offer. To put it bluntly, gdb sucks balls.
Older versions of MinGW used to have conformance problems even bigger than the one I mentioned above and several bugs. Having to explicitly cast a zero is nothing compared to swprintf() taking the wrong number of parameters, or the compiler producing wrong code under specific circumstances or sometimes even crashing non-deterministically (both have happened to me with MinGW 3.x). At least with VC++ I have a little more certainty that if the input is correct the output will be correct.
Does anyone else have this issue where a new project/solution won't "start without debugging"? I usually do that so the console window stays open, but when I click "start without debugging," it just goes through as if it's only debugging and closes the window down.
I know there are a number of workarounds, but I am curious as to why the start without debugging won't work. Anyone else have this issue?