Evidence that Visual C++ is bad for your code
Ok, I'll admit I actually like Visual C++. Writing make files never appealed to me, and there isn't another IDE out there that is as nice to use as Visual Studio (although Code::Blocks is very close.) However, I've been have to go through some old code that was written in VC++ 5.0 and getting it to compile in VC++ 2005 (or later.) Unfortunately, there's an awful lot that is almost hopeless and needs to be completely reworked. What's really got me aggravated at the moment, though, is how VC++'s lack of standards compliance has allowed coders to write bad code. Case in point: I downloaded a project from http://www.codeproject.com to evaluate for a project I'm working on. I wanted to compile it to see how the demo worked. There are a LOT of cases where a looping variable was declared in the 'for' loop (ie. for ( int i = 0,...)) and then accessed outside of the loop. You see, back in the olden days, VC++ applied the scope of these variables outside of the loop as well. Nowadays, they only apply to the loop, which makes way more sense. Unfortunately, coders (myself included) worked around the errors in the old versions of VC++ by declaring the variable in a for loop's parameter list, then accessing it later (outside the loop.) Now, we have to go through all of this code and declare the variable before the loop.
Standards compliance: What a concept!
