Thread: Advantages of microsoft visual studios

  1. #16
    Master Apprentice phantomotap's Avatar
    Join Date
    Jan 2008
    Posts
    5,108
    I'd say you are better off dropping Eclipse since you'll gain a better compiler than the current GCC port to windows.
    O_o

    And which port would this be?

    Soma

  2. #17
    Banned
    Join Date
    Aug 2010
    Location
    Ontario Canada
    Posts
    9,547
    Quote Originally Posted by Mario F. View Post
    On those rare, rare, rare instances when I needed to use an external resource editor, this was it.
    I've used it... it's not too bad... but no Message Tables... I harp on this because Message Tables are how the OS and Structured Exception Handling deliver error reports to the user. It's a separate compiler (mc.exe) and it's not obvious how it works.

  3. #18
    (?<!re)tired Mario F.'s Avatar
    Join Date
    May 2006
    Location
    Ireland
    Posts
    8,446
    Quote Originally Posted by phantomotap View Post
    And which port would this be?
    Let me think... ah! Can't remember.

    Seriously though, here's a tale for you:

    It's been a while. But believe it or not, there was a time when I would move between GCC and MSVC, trying to make my mind on what to choose for windows building. The little cyber warrior in me decided GCC was the best: "Ah! take that M$, Long live the standards! Free software! etc!" -- You know the drill... I even bought SlickEdit, which is to me the best IDE ever made (so good in fact not an year ago I bought a second license to use on my Linux box). But then the time came to actually start doing something with my life, instead of hammering C++ code while pretending to be busy. That means, I actually started to be payed to code in C++. So back I went to make sure this was the right choice, only this time I decided to drop the cyber warrior attire and be a bit more responsible about it. Magically, MSVC won over MinGW. Why you ask? It must remain a secret no one knows about, but me.
    Originally Posted by brewbuck:
    Reimplementing a large system in another language to get a 25% performance boost is nonsense. It would be cheaper to just get a computer which is 25% faster.

  4. #19
    Master Apprentice phantomotap's Avatar
    Join Date
    Jan 2008
    Posts
    5,108
    O_o

    So you told someone to do something because magic faeries apparently had a hand in something you don't fully understand and can't describe to anyone else?

    Interesting. That is literally how to start a religious war.

    Awesome. ^_^

    Soma

  5. #20
    (?<!re)tired Mario F.'s Avatar
    Join Date
    May 2006
    Location
    Ireland
    Posts
    8,446
    Quote Originally Posted by phantomotap View Post
    Interesting. That is literally how to start a religious war.
    No. Actually it is precisely how I just avoided one. Have a nice day.
    Originally Posted by brewbuck:
    Reimplementing a large system in another language to get a 25% performance boost is nonsense. It would be cheaper to just get a computer which is 25% faster.

  6. #21
    ---
    Join Date
    May 2004
    Posts
    1,379
    Just because something costs money doesn't mean that it is better than something that is free.

  7. #22
    Registered User
    Join Date
    Dec 2006
    Location
    Canada
    Posts
    3,229
    For cross-platform code, GCC has a big advantage. It's a lot easier to maintain a code-base for 1 compiler rather than 2.

    For Windows-only code, I don't think it really matters. I like GCC because I'm used to it, but I think MSVS is a good IDE (but that could be because I'm used to it, too).

  8. #23
    and the hat of int overfl Salem's Avatar
    Join Date
    Aug 2001
    Location
    The edge of the known universe
    Posts
    39,659
    True enough, but if the code works with two different compilers, then you can be pretty confident that you're writing good code.
    And not just something which "just happens to work" on the current compiler because the code bugs happen to align with the compiler assumptions.

    Since Eclipse is not tied to any toolchain (can VS even be persuaded to use another compiler?), then downloading VSE just to get the compiler, then driving it from Eclipse is also an option.
    If you dance barefoot on the broken glass of undefined behaviour, you've got to expect the occasional cut.
    If at first you don't succeed, try writing your phone number on the exam paper.

  9. #24
    Banned
    Join Date
    Aug 2010
    Location
    Ontario Canada
    Posts
    9,547
    Quote Originally Posted by Salem View Post
    True enough, but if the code works with two different compilers, then you can be pretty confident that you're writing good code.
    And not just something which "just happens to work" on the current compiler because the code bugs happen to align with the compiler assumptions.

    Since Eclipse is not tied to any toolchain (can VS even be persuaded to use another compiler?), then downloading VSE just to get the compiler, then driving it from Eclipse is also an option.
    If he downloads the Microsoft SDK ... not only does he get full Windows API documentation, he gets the full blown command line version of VC++ for free too. It's bundled with the SDK along with all the headers and libs for both X86 and X64 targets... He can use it with whatever IDE he likes...


    Download details: Microsoft Windows SDK for Windows 7 and .NET Framework 3.5 SP1

  10. #25
    (?<!re)tired Mario F.'s Avatar
    Join Date
    May 2006
    Location
    Ireland
    Posts
    8,446
    I'm jot sure. It's been a while and it may even changed during this time, but while eclipse can for sure integrate vc.exe, its support for MSVC-based debugging is just not on par with Microsoft Visual Studio. Dunno, about anyone else, but I tend to spend more time on the debugger than on the compiler...
    Originally Posted by brewbuck:
    Reimplementing a large system in another language to get a 25% performance boost is nonsense. It would be cheaper to just get a computer which is 25% faster.

  11. #26
    C++ Witch laserlight's Avatar
    Join Date
    Oct 2003
    Location
    Singapore
    Posts
    28,413
    Quote Originally Posted by Mario F.
    Dunno, about anyone else, but I tend to spend more time on the debugger than on the compiler...
    Me too, but then it is possible to debug without a debugger, but compiling without a compiler...
    Quote Originally Posted by Bjarne Stroustrup (2000-10-14)
    I get maybe two dozen requests for help with some sort of programming or design problem every day. Most have more sense than to send me hundreds of lines of code. If they do, I ask them to find the smallest example that exhibits the problem and send me that. Mostly, they then find the error themselves. "Finding the smallest program that demonstrates the error" is a powerful debugging tool.
    Look up a C++ Reference and learn How To Ask Questions The Smart Way

  12. #27
    Master Apprentice phantomotap's Avatar
    Join Date
    Jan 2008
    Posts
    5,108
    I wish I could spend more time with the debugger. ;_;

    Soma

  13. #28
    Registered User xentaka's Avatar
    Join Date
    May 2011
    Posts
    60
    So when would using the GCC compiler become an issue with windows programs? Just for simple windows interfaces, or are we talking about full blown windows apps.

  14. #29
    Master Apprentice phantomotap's Avatar
    Join Date
    Jan 2008
    Posts
    5,108
    Do you need to interface with a COM, COMPlus, DCOM, OLE, ActiveX, ".Net", C++ object constructed using Microsoft's tools including their compilers, linkers, assemblies, or automation tools? This includes "DirectX", some native "Windows 7" components, and a lot of driver level components created by third-parties.

    If the answer is "Yes"; you will have problems. It is only a matter of time. The above objects as constructed by Microsoft's tools use extensions designed precisely to hamper interoperability. Unfortunately, if the answer is "Yes" you will have problems with any compiler that hasn't been blessed by Microsoft with compatibility support or the tremendous effort by some community. In other words, you get to use "Embarcadero" and to a lesser extent "Intel". "LLVM", "Pelles", "GCC", and "LCC", I could name others, will all have problems with one or more of the above references objects.

    If the answer is "No". Enjoy pretty much any compiler you chose, but at least pick one with strong, modern support for and conformance to the standards.

    Soma

  15. #30
    (?<!re)tired Mario F.'s Avatar
    Join Date
    May 2006
    Location
    Ireland
    Posts
    8,446
    Quote Originally Posted by xentaka View Post
    So when would using the GCC compiler become an issue with windows programs? Just for simple windows interfaces, or are we talking about full blown windows apps.
    Never. Using GCC will, to my knowledge at least, never become an issue when developing for windows. However there are those (me included) who think there's much better out there when there's a clear indication one is willing to spend money, as was the case on the OP. GCC cannot compete in final binary performance and size, and its debugger is no match for the MSVC solution. This conclusion I didn't reach lightly.

    After around 2 years of GCC use and in a time I needed to make a serious decision on which compiler to use, I did extensive testing with both trying to draw comparisons from comparable build settings. Speedwise, the differences are not so significant (and I hear there's been improvements to GCC handling of exceptions too, one of the most notable performance issues with this compiler). But code size is very significant. Especially when you tend to statically link and would like some sort of sane binary size. But there's also MSVC debugger that is simply on a completely different level from GDB. There's people in these forums who can attest (if their memory serves them right) to my love for GDB. So this isn't your typical fanboy trash talk. But I don't tend to blindly follow anything or anyone. And just because I actually like GDB command line debugger, MSVC debugger is simply ona completely different race. Together, with the addition of a quite formidable development suit, for someone that says they are willing to spend money, I think it's completely insane to stick with Eclipse and (I have to guess) MinGW if they plan to develop for windows.
    Originally Posted by brewbuck:
    Reimplementing a large system in another language to get a 25% performance boost is nonsense. It would be cheaper to just get a computer which is 25% faster.

Popular pages Recent additions subscribe to a feed

Similar Threads

  1. Advantages of using C first?
    By dxfoo in forum General Discussions
    Replies: 46
    Last Post: 03-26-2010, 09:57 PM
  2. advantages of using IDE
    By surrounded in forum C Programming
    Replies: 8
    Last Post: 03-03-2009, 06:36 AM
  3. advantages and disadvantages in c
    By cnu_sree in forum C Programming
    Replies: 4
    Last Post: 11-06-2007, 09:29 AM
  4. What advantages does C# have?
    By jsrig88 in forum C# Programming
    Replies: 10
    Last Post: 01-13-2007, 07:00 PM
  5. Advantages in struct?
    By curlious in forum C++ Programming
    Replies: 5
    Last Post: 12-14-2003, 11:57 PM

Tags for this Thread