Sign in to follow this  

Visual C++ or Visual C++ .NET?

This topic is 4529 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

If you intended to correct an error in the post then please contact us.

Recommended Posts

I've heard nothing but bad reviews about the .NET version, but the regular Visual C++ product seems slightly old. I just wanted an opinion on which one I should get. I need a good compiler and the Visual C++ line seems to be quite popular. I want it to work well with DirectX. I've tried free compilers, but am not pleased thus far. Any input would be greatly appreciated before I go purchase such expensive software. Also, do you think the professional version is worth the extra $400 or so dollars? I'll be using this for company purposes and distributing commercial games and software.

Share this post


Link to post
Share on other sites
AFAIK Visual C++ NET is the name of the product. It includes both Managed and native C++ support.

So you cannot really buy one and not the other one. There might be a free version of the Microsoft Compiler somewhere in the Microsoft web site, but not the IDE.

Visual Studio is worth every penny IMHO, but be warned, there is this love/hate realtionship between programmers and development tools, and Visual Studio is no exception. Different programmers will tell you different things about Visual Studio. And Visual Studio is no silver bullet, it breaks frequently, but it does the job.

Share this post


Link to post
Share on other sites
First of all, thanks for your reply. When you say that they're the same type of program, yet .NET has the managable code as well as the native variation, I would figure that the ,NET version would be fine for what I need. The catch to me however, is why did .NET get such bad reviews if it can be the same as regular Visual C++ by turning the managable code thing off? I don't want to buy a bad product.

Some of the problems were large file sizes and code that apparently runs slowly. If I turn the manageble stuff off, will it work the same as regular Visual C++?

Share this post


Link to post
Share on other sites
Visual C++ .NET, also known as Visual C++ .NET 2002 or Visual C++ 7.0, is the second-most-recent final release of Microsoft's C++ IDE and compiler. It supports both native and managed C++ code. It is several years more recent than Visual C++ 6.0 (the version that came before it), and is better at adhering to the C++ standard. The fact that it supports managed C++, an "extension" to the C++ language which uses the "Microsoft .NET Framework", has no bearing on its support of standard C++.

Share this post


Link to post
Share on other sites
Visual Studio.Net is a wonderful IDE and breaks for make very infrequently (less than say, Eclipse). C++ programming from the IDE is also very nice, and there shouldn't be much to complain about. The one largest IDE change from 6 to .Net was that the profiler disappeared, but you can download an add-on to do that. The C++ 7.1 compiler that comes with VS.Net 2003 (and is available free online now) is either the best or nearly the best C++ compiler available right now.

On the other hand, Managed C++ isn't so hot. It feels like a hack when you program with it and most programmers prefer to use another .Net language like C# instead. A new version of C++ for .Net is on the way, C++/CLI, and it is supposed to fix a lot of the issues with the existing Managed C++.

Share this post


Link to post
Share on other sites
If you give me more details about the reviews then I might explain them better to you.

My experience:

Visual Studio .NET 2003 (which includes Visual C++ .NET) is a step back on project management for C++ projects (managed and native). Project loading is much slower, file searching is worst, the IDE is slow, UI is non-responsive in several cases. A lot of people compare .NET 2003 with Visual C++ 6.0 and they do not like to see that the IDE was not improved for C++, and that some functionality was removed.

Managed C++ is complex and requires understanding of both the .NET framework and C++, and in reality there are very few cases in which you would need to create a Managed C++ project.

If you are working on games is very likely you are going to be dealing with Native C++ projects. Unfortunately the IDE behaves pretty much the same way for both Native and Managed C++ projects. So changing your install options does not change the experience. Note also that it is very likely that the .NET framework is already installed on your box if you are running Windows XP (Not sure for other versions of Windows)

If you are trying to decide if you should buy either Visual C++ 6.0 or Visual Studio.NET note that Visual C++ 6.0 has not been improved (In terms of libraries or security updates) in a long time, and I suppose that is going to become unsupported sometime this year. Note also that the DirectX SDK comes with extensions for Visual C++ .NET, and I do not believe that is the case for 6.0

A lot of game developers have shipped games developing Visual C++ .NET 2003, dealing with big projects. I believe you should be fine getting the .NET 2003 version (Or you can wait and get the .NET 2005 version)

Share this post


Link to post
Share on other sites
I personally love .NET 2003. I have found that some features work a bit better in 6.0, for example the "Go To Declaration" for a variable seems to work much better in 6.0 than it does in 7.1. But there is no arguing that the standard library with 7.1 is light-years ahead of that of 6.0. But then again what do you expect, considering that 6.0 is about 8 years old( 1997-98 ?? ).

In my opinion I would go with the newer software, you can always downgrade your products from Microsoft if you hold a valid license for a current product. That is how I recently came to own 6.0 again - I had to develop a plugin for Rhino( a NURBS modeling program). Rhino forces a link to the old MFC libraries from 6.0. So I just called up Microsoft and they sent me 6.0 Pro for 20 bucks plus s/h.

If I were you, unless you need a compiler right now, I would just hold out for MSVC 2005. It should be here before you know it.

hth
moe.ron

Share this post


Link to post
Share on other sites
from what I've seen, it's more bloated in the IDE, but still perfectly adequate. Buying VC6, unless as a cheap second-hand profesional edition, doesn't make much sense nowdays. I still prefer VC6 as I'm more confortable with it, but it's just me clutching at straws.

Share this post


Link to post
Share on other sites
Also be aware, that if you're making games, and using DirectX, the latest releases of the DirectX SDK aren't supported on VC6, only VC.NET. The .net 2003 compiler has better optimizers, options to produce code with SSE and SSE2 instructions.

The non-pro editions don't include the optimizer (which is a royal cop out, as optimizing code isn't a pro only feature). However, you can download the .net 2003 pro compiler for free from Microsoft, place the executables in your non-pro version and it should work. You might need to adjust the command line options manually for optimizations, or the IDE might automatically adjust to the new version (I'm not sure).

For commercial purposes, it might make sense to look into one of the MSDN subscriptions. I think at one point I checked and it was cheaper to get a year subscription to lots of stuff than just buy just XP and VC.NET alone seperately. Depending on your subscription you might get all the latest OSes, compilers for all languages, dvds filled with help, all mailed directly to you each month. You may automatically get VS2005 when it comes out with such a subscription.

Share this post


Link to post
Share on other sites
Lots of bugs you wonder how they ever shipped but I wouldn't use anything else. Moving from VS6 to .NET was painful...but only briefly. Then I grew to love it. I'd say it's less-worse than VS6.

Share this post


Link to post
Share on other sites

This topic is 4529 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

If you intended to correct an error in the post then please contact us.

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

Sign in to follow this