4 ms·
I'm not a C/C++ dev, so forgive my ignorance. Is Visual Studio [Community] not the standard anymore?
by kevinSuttle 11y ago
I'm not a C/C++ dev, so forgive my ignorance. Is Visual Studio [Community] not the standard anymore?
- __mp 11y agoI use QtCreator: It's pretty solid and has good and fast code completion.
- hellofunk 11y agoQtCreator on OSX has proven buggy for me in the past. I tried to give it another try recently, and it depended on a version of Xcode that is 2 version numbers ago. I'd have to edit the various installation assertions myself to get it to find and use modern Xcode.
- realharo 11y agoGreat thing about Qt Creator is that it can use clang for parsing the code, so the completions and highlighted errors tend to be very accurate.
- corysama 11y agoVSC is really, really great. Meanwhile, the previous free VS's were not as full-featured, none of them run on OSX or Linux, and some Windows users still prefer GCC for various reasons.
- hellofunk 11y agoYour comment suggests that current VS runs on OSX? I'll have to check that out!
- kozukumi 11y agoVisual Studio does not run on anything other than Windows. However there is an Atom-like code editor called Visual Studio Code that is multi-platform running on Windows, OS X and Linux. I believe VSCode is built on the same platform (Electron?) as Atom although I might be wrong.
- carussell 11y agoThat they're both open source editors built on Electron is just about the only thing that Atom and VSCode have in common.
- kozukumi 11y agoYes, I never meant to imply they are the same, just that VSCode is "Atom-like" in that it is a code editor built using the same core framework as Atom.
- corysama 11y agoSorry I was vague. I was including VSC in "them".
- kozukumi 11y agoOn Windows Visual Studio is still very much the default in the context of Windows only developers. Some people/projects prefer to use MinGW-W64 builds with an IDE such as Code::Blocks, CodeLite, QtCreator, etc. With VS Community coming out last year it has given more people/projects access to a full Visual Studio environment which is very nice IMHO. I have not seen many FOSS projects switch to using Visual Studio and MSVC (the short name for the Visual C++ Compiler) over MinGW-W64 though. I suspect this is just down to "if it ain't broke" though more than anything.
- Ace17 11y agoNot if you intent your code to be portable.
- a3n 11y agoThe devs here use VS to write C++ targeted to an embedded device running VxWorks. Their code may or may not be "portable," but it's not targeted to Windows.
- roel_v 11y agoWhy not? You can develop on Windows, don't include windows.h or put platform-specific things in #ifdefs, make use of all the awesomeness that is Visual Studio (potentially improved with ViEmu, Visual Assist and Resharper), then add a CMakelists at the end to compile for other platforms. Yes the first time you'll probably have to tweak a bit to get it to compile on other platforms, but that's loads better than suffering through gdb and ctags for months. (I have used RedHat 4 back when it was new and fresh and have been using Vim for 15+ years; I have written vim scripts of 100 lines and more. Just to say, I'm not some greenhorn who's never known anything but an IDE. I still think developing C++ using Visual Studio is an order of magnitude better than any alternative.)
- Ace17 11y agoExperience has taught me that C++ compilers generally don't agree on the code they will accept: incomplete implementation of the standard (Visual C++ 2010 partial C++11 support), different non-standard header files (string.h vs memory.h), different warnings ( "possible loss of data" ), different error message conditions ( "not all control paths return a value" ). I find it a lot easier not having to support several compilers, especially if Visual Studio's is one of them. If the Visual Studio compiler was able to run on many platforms and target those platforms, it could definitely be a choice, as it compiles fast and generates fast code. However, for the moment, g++ allows me to ensure that my project properly builds for all desktop platforms, without having to setup compilation-dedicated virtual machines or worse, a jenkins build server ... How are you going to avoid breaking things if you can't cross-compile before committing ?