Problems that might be faced in rebuilding earlier MSVC version built code to newer version - c++

Would like to ask a general question.
Would be trying to scope the difficulties and effort require to build a code (which was earlier build in MSVC 2005) in MSVC 2010.
I am not using any MFC, just using plain C++?
What would be the problems that I might face? Would appreciate any help to also highlight considerations that I should look into
Tthanks

Microsoft keeps a list of breaking changes to the compiler on each major release, you can find that list here http://msdn.microsoft.com/en-us/library/bb531344(v=vs.100).aspx. If you are going from 2005 to 2010 then you will want to look at both 2008 and 2010 changes.

Related

Visual Studio 2015, Using 2015 Compiler

I have a simple question in which I think the answer is no as I can only find back wards compatibility with Visual Studio.
I was wondering can VS2015 use the latest C++ compiler offered with VS2015? I am running into issues with things like to_string not being defined, while I have a work around for all my issues I would like to code with simple function calls rather than use work arounds.
If anyone knows how to do this or can show me a trick for it please let me know!
PS I saw the http://daffodil.codeplex.com/ and I see it only lets me set compiler settings for older versions of VS.
You can set the Platform Toolset to Visual Studio 2015. Bring up the properties for your project, and on the General page you can specify the Platform Toolset. If VS2015 isn't listed you installed the IDE but not the C++ compiler, or something got messed up in your install.

x64 if Visual Studio C++ 2012?

I have been using SDL with Visual C++ for a while, mostly making practice games, but I find that I can't give the game to other people unless they have Visual C++ themselves. One problem that I found using a Dependency Tracker was that the source files and such used both x86 and x64. After looking through, I found that my Visual Studio source files were all in x64, so naturally I went through and modified my SDL files to be the x64 package instead of the x86. After fussing about how it still insisted on not working, I found out that the program that I was exporting was in x86 all along! I've been trying since to get it to export in x64 since, but I simply don't know how. Can somebody help me do this?
Oh well, this question is a bit hard to understand for me. It looks, like MSalters suggested, that you mix up some terms.
The source of your problem is probably just the missing Visual Studio Redistributable on the target computer.
You can get it here. Not that this is the redistributable for VS 2012 Update 1. There are also different versions for x86 and x64 (also arm). Depending on what your output is, you have to deliver the right version of the redistributable with you programms.

Visual C++ 2010 native Intellisense settings

So, I started programming in C++ moving from Java, Eclipse IDE. I use VS 2010 proffessional, I have it for free from DreamSpark.
However, I am very unhappy with its Intellisense, beeing far far worse than Eclipse (its C++ version) has. But almost everywhere on the internet I read that VS has great, superior Intellisense for native C++. So I want to ask, is there any way, some settings to change to make VS intellisense behave simmiliar to Eclipse? Or is there any other functionality in VS intellisense that compensate that?
To be exact, Eclipse intellisense does much better job guessing what object I want to create, suggests includes, generate keywords, generate few common for cycles etc...
I would not even as this question, but I found somuch possitive feedback on native C++ VS 2010 intellisense, so I have feeling I am doing something wrong... Thanks.
If you are writing managed C++ (C++/CLI) there is a post explaining that intellisense is not currently implemented here
As for alternatives you may like visual assist X.
This question has also been answered before on Stackoverflow. Please see below for some alternative answers and suggestions:
No IntelliSense for C++/CLI in Visual Studio 2010?

Visual C++ 2008 Express Or Eclipse Ganymede With CDT

I'm learning C++, and I want to know from those who are very good developers now: What is the best IDE, Visual C++ 2008 Express or Eclipse Ganymede with CDT? Remember that I'm using Microsoft Windows Vista Ultimate. Thanks!
The book that I'm reading is from Deitel: C++ How to Program, 5/e, because I don't know if the code of the book supports Microsoft Visual C++ 2008 Express.
I'm using both regularly now.
Visual studio is easier and more user friendly. I have issues with it though. They force you to do a number of things for reasons the benefit Microsoft and not you. It's free so you can't complain that much. Support is non existent but there's google for help.
Eclipse Gallileo does some difficult things startlingly well, but does some simple stuff startlingly badly. Such as when you compile if there's an error you get no visual indication. You have to open the problems window to see the errors. DOH! Eclipse is nearly as good as visual studio overall and is one of the best when using linux. The new version of the debugger has some very nice new features as well. Support is poor to non existent but there's google for help.
I tried codeblocks. The support was not very good to rude. I found it difficult to do anything serious with.
If you're working on Windows, MSVC++ 2008 Express is probably the one to go with, since it's the platform's native compiler. If you don't have any experience with Eclipse already, definitely go with MSVC. I've found Eclipse to be very counter-intuitive, but that's me, you may love it.
I use codeblocks :) I like it a lot actually. Its interface is really easy to use.
I am having issues with MSVS right now which I will be posting a question about here in a few minutes.
Either will do you fine at this stage, but on balance I think you will find VS 2008 Express a little more straightforward unless you have much Eclipse experience.
That said, once you begin developing your OS you may find that you need to upgrade to the full (non-Express) version.
I use both Visual Studio 2005 Pro (at work) and Eclipse CDT (for personal projects).
I do prefer to use Eclipse because I program meanly Qt applications on Windows with it. The Qt integration module is really good (and available freely at http://qt.nokia.com/).
Once you are there, you could give a try also to Qt's lightweight IDE: Qt Creator.
If you are going to do C++ GUI programming, I think you should definitively go with Eclipse CDT and the Qt Integration plugin. I've programmed (and suffering) several years of MFC before learning Qt and I will never go back!
Hope it helps!

What are the advantages of VS2008 over VS2005 for C++ development?

We are considering switching from MS Visual Studio 2003 to MS Visual Studio 2005 for our C++ development. I think jumping to 2008 might be better.
In what ways are VS2008 better than VS2005 for C++ development?
Are there any disadvantages of VS2008 over VS2005?
There are very little difference between 2005 and 2008 from native C++ developer point of view. However, if coming from 2003, it makes sense to upgrade directly to 2008 - the conversion process should be almost the same, and you will end up with a slightly better platform. Some new features which are available for 2008 only:
/MP option for multicore compilation (a huge timesaver if you have a mutlicore computer)
some improved debugging options for multithreaded applications
There are also some additional downloadable feature packs for 2008 only:
TR1 libraries
new MFC
To be honest, as far as pure C++ development goes, I don't think there is much between the two, other than VS2008 is the 'latest' release. I didn't notice any significant changes.
However, the latest release of MFC has been given a new lease of life with the addition of the Feature Pack (giving you an MSOffice 2007 look and feel) which might be worth knowing.
The biggest improvement in 2008 for us was in reliability of Intellisense on large solutions. Our project has several million lines of code and Intellisense was unusable in 2003. In 2008 it is improved and works more often than not.
For me the biggest improvement was simply that VS2008 was quite noticeably snappier.
VS2008 contains loads of bugfixes, and is definitely worth the upgrade IMO. Aside from improvements in the UI and related tools, it is much better at dealing with template classes, which didn't always work so well with the VS2005 compiler unless you were using the most basic syntaxes. There are also many other areas which have been improved, but I can't be bothered to find a MS document at the moment detailing these changes. So trust me when I say that there are many. :)
I'd say unless you have some compelling reason to stick with 2005 (ie, backwards compatibility of your code which doesn't build correctly with VS2008), you should definitely push for an upgrade. You can, fortunately, work with multiple versions of VS on a single workstation. You just need to install them sequentiall; ie, VS2005 first, and then VS2008 afterwards.
Then you could test your codebase under VS2008 and see how painful (if at all) a migration to VS2008 would be.
Visual Studio 2008 is an integrated environment that allows you to develop for both Windows CE and Windows. (Previously we had to work on eVC++ 4.0, which was not as nice...)
A disadvantage that I encountered is that the latest installment of the Dinkum STL containers make an assumption that pointers are used, rather than the using allocator::pointer policy. This is a problem for us, because we wrote our own "pointer" class for shared memory use (storing memory offsets instead of absolute addresses). So, we had to use an older STL library. On the upside, the debugger is able display the contents of STL container much more informatively.
I currently use VS 2005. I tried the last beta of VS 2008, and the compiler consistently crashed on my projects, so I stuck with VS 2005. I haven't looked at the release version.
One big reason to choose VS 2008 over VS 2005 is that VS 2005 has a bug with intellisense that causes it to use too much memory. This isn't normally a problem, but when I try using both Visual Assist and Refactor! C++ in VS 2005, intellisense churning brings my system to its knees. This is supposedly fixed in VS 2008. (I have a license for VS 2008, and as soon as my next product release I'm going to give migration a try, mainly for this reason.)
Visual C++ 2008 have dropped support for single threaded runtime library. I don't think it really matters though.