C++ vs Visual C++

This is a Barking Down a Hole post on Visual C++ but we cannot start here because how this question came up is only half the story. So every few years I do a rather strange thing. I go look up the graduation requirements of the current crop of Computer Science kids. Why do I do this?

Listen to a Story About a Man Named…

When OSU started it MIS program, it had several gaps in its classes. Because it was born from a specialization of the Management school in the Business College, it had lots of Project Management but not much coding. To remedy this problem they just required the kids to go through various computer science classes.

As a result of being part of that experimentation, I was a horrible programmer. In the Business College if you got confused about something…lets say debits and credits, your accounting professor is always there to help you through your problem. The culture shock of asking the professor help while they played Microsoft Pinball and the game being more important then helping me was a shock. The fact that the math requirements were higher then a typical business school’s graduate, did not help either.

What To Do

I scrapped by my computer science classes by the hair of my chiny chin chin. When I started my career as system developer, we ran into a big problem. No one was a coder. So I got my MIS programming, Visual Basic.Net book out and worked through it. Instead of focusing on getting something that worked, I focused on understanding why it worked. Then I went on to what was called by my group, the Big Book of Visual Basic, the God Edition and went through it. It is the Special Edition Using Microsoft Visual Basic .NET. Then we built the system. It turned out great and I had a fuzzy understanding of the basics of programming.

About the time the project was wrapping up, my employer went through a reorganization. Then I became a professional programmer. I had no business being one but I buckled down and discovered O’Rielly Publishing.  What does someone who needs to learn to program do when they have already gone through college courses and read beginner books? Read more of them! First Learning Visual Basic.NET. Next, Programming Visual Basic.NET 2005. That got me a touch more solid but I still had gaps. When I wanted to move on from my first job, I realized Visual Basic.NET is not the language to know to be employed. After that realization came Learning C# 3.0 then diversification to Learning ASP.NET 3.5 and Programming ASP.NET. Needless to say, I gave quite a bit of money to Jesse Liberty in this process.

After that battle, I started to understand. This enabled me to handle more advanced theoretical books that explained various techniques.

How Is This Relevant?

Because I never intended to end up a programmer, I had gaps that most programmer don’t. The MIS program was trying to figure out how to teach us at that time. The way I remedied this is I looked through the matriculation schedule for a Computer Science degree. I identified the books used in the classes and started reading. I look at the difference between years and when something new comes along, I grab it up and start reading.

Well they had a different book in second comp-sci class. It was a C++ book. Now I have never done C++ but I have done C. That was painful. Garbage collection is the greatest invention in the history of computing for a reason. I looked at the book. It looked good. So I am going to try to work through a C++ book. This led to a question. As a .Net stack developer, I love Visual Studio. Half the reason I don’t do Java is there is no IDE that is as good as Visual Studio. Well isn’t there a Microsoft implementation of C++ called Visual C++?

The Question – C++ vs Visual C++

This actually arose when talking to my buddy Alfred about using Visual Studio to do C++. He was cool with it. He said it was a great IDE for C++.

Am I the only one that had crashing car sounds in their head? I thought it was the Microsoft implementation of C++? The IDE is Visual Studio.

A little back and forth, we got ledged up on the topic. I feel it is a Microsoft specific implementation of the C++ standard but not an IDE.

The issue is that Wikipedia says its an IDE for C++. Microsoft implies Visual C++ is an implementation of C++.

From Wikipedia:

Microsoft Visual C++ (often abbreviated to MSVC) is an integrated development environment (IDE) product from Microsoft for the C, C++, and C++/CLI programming languages. ”

How does Microsoft say it, well how about a quick start guide for Visual C++ in Visual Studio?

It is treated just like Visual Basic.NET and C#. It is a language preference and not an IDE. If that is not good enough proof. Then go to the offending Wikipedia page and look at the versioning number.

If you look at the screen shot that is the compiler version for Visual C++. Not an IDE version. Also see the name of the IDE on the side.

Conclusion

Was Alfred actually wrong? No, because looking a MSVC++ 1.0 through MSVC++ 4.2. It probably had an IDE included that allowed you to consume the language. That IDE was probably marketed as Visual C++ and later, apparently, Developer Studio. So it maybe outdated rather then completely wrong.

Because it is the Microsoft version of C++. C++ should still work with it. If you avoid the Microsoft specific features then your Visual C++ should revert to a C++ compatible program. I will let you know how it goes.

I hope this helps anyone who may have had this question.

Leave a Reply

Your email address will not be published. Required fields are marked *