MSVC is too heavy to download for my PC. And online compilers are limiting my learning. So I was looking for new compilers. What do you guys prefer? I have heard if the following:
1. Dev C++. Lightweight.
2. Eclipse CDT. Heavy but feature rich.
3. G++. Idk much bout this one.
4. Code::Blocks.
As for G++, I knw that it is a commandline compiler.
But the IDE's can use it in a GUI fashion. g++ is a good compiler, don't write it off just yet.
In terms of compilers, I would recommend clang from llvm, it has really nice easy to understand error messages, and can be used with lots of IDE's. It seems to be the best in implementing new standards, often before the std is out officially.
I would stay away from any MS IDE, unless you want to do other things like .NET or C# say. My reason for this is that they have been terrible at keeping up with new standards in C++, IIRC it took them about 3 years to catch up to C++11. It is up to date now, but what happens when c++17 arrives?
Edit: Just discovered that clang can be used with VS
The Microsoft compiler is not yet completely up to date with C++14.
But with the toolset 'Clang with Microsoft CodeGen', Visual Studio is.
Also, your code can take advantage of language features that are not currently available in the Visual C++ compiler, including C99 complex types and C++14 extended constexpr support. And because the Clang-based compiler generates the same debug information format as the Visual C++ compiler, you’ll still be able to debug your code with the same great Visual Studio debugger experience. https://blogs.msdn.microsoft.com/vcblog/2015/12/04/clang-with-microsoft-codegen-in-vs-2015-update-1/
> but what happens when c++17 arrives?
Microsoft is now way ahead of GNU as far as C++17 is concerned.
But with the toolset 'Clang with Microsoft CodeGen', Visual Studio is.
It was a previous post of yours that caused me to strike-out my comment there, before I saw your reply :+) But you may not have seen that.
Interesting, MS seem to have have solved a lot of problems by using clang. I wonder if that also gets around their list of bugs in the C++11 and C++14 features? They mentioned compiling the Windows specific stuff with the regular Windows compiler.
Btw I use Linux exclusively, so don't feel that you need to write lots of information for my sake.
> They mentioned compiling the Windows specific stuff with the regular Windows compiler.
Most libraries (other than the standard C++ library) that ship with Visual Studio (like the MFC library) use non-standard Microsoft extensions. clang++ would choke on most of those.
> Interesting, MS seem to have have solved a lot of problems by using clang.
AFAIK, the Microsoft compiler team is still working hard to attain full conformance; their intent is to have a fully conforming Microsoft C++17 compiler by the time C++17 is released.
Visual Studio 2015 already used clang for the cross-platform programs; what is new is that they have now invested in setting up a 'Clang/C2 feature crew'.