Does CLion IDE include all features which ReSharper C++ provides under Visual Studio?
Asked Answered
H

3

34

Since I've been using for some while ReSharper for C# (and other JetBrains tools) and have been very pleased with the experience, I'm oscillating regarding which would be the better option, between the 2 JetBrains products (from the title) for C++ projects.

One key point of decision would be if CLion includes all (or at least most) features provided by ReSharper C++.

The only information I could find about this topic is the following quote from a JetBrains blog, which doesn't help me much:

As we’ve already mentioned, at some point the CLion and ReSharper C++ teams split, giving way to two completely independent implementations of C++ parsers. This was caused by two completely different platform architectures, IntelliJ and ReSharper, and two different sets of ideas of how parsers can be implemented.

Also other aspects (except feature sets) regarding the comparison between the 2 options/combinations would be welcome.

Heaver answered 1/3, 2016 at 15:54 Comment(2)
Short answer: no, it does not. A detailled comparison would be useful, though. I guess we can expect most Resharper features to be implemented in CLion eventually.Remuneration
Thank you very much for your comment. Yes, a detailled comparison would be great, if there exists one (I haven't found it anywere).Heaver
P
34

The choice between CLion and ReSharper C++ is usually dictated by your development environment.

  • CLion is a standalone cross-platform IDE based on the IntelliJ platform. It is an option when your project uses CMake to manage the build process and GCC/Clang as the compiler.
  • On the other hand, if you are using Visual Studio as your IDE and compile your project using the Microsoft toolset, then you should be using ReSharper C++.

CLion includes a lot of functionality that R++ simply does not need (because it's running on top of Visual Studio) - for example, a debugger UI for GDB/LLDB and support for editing CMake files. Additionally, all the usual goodies of the IntelliJ platform are available, including integration with VCS systems, numerous plugins and support for other languages (e.g. Swift, Python, JavaScript, HTML/CSS and others).

ReSharper C++ is a Visual Studio extension, so it uses the Visual Studio project model and supports various peculiarities of the MSVC compiler. It also has a more precise code model than CLion and provides more code generation options, on-the-fly code analyses and context actions (most of them are listed on the comparison with Visual Assist X page). In addition to Google Test supported by CLion, R++ can also run tests written using the Boost.Test framework.

In the end if you have a chance, do try both and see which you like more - both products have a free 30-day evaluation period.

Pageantry answered 13/6, 2016 at 14:1 Comment(2)
Thanks for the answer. I my case I have to start a completely new C++ project and I may choose the development environment freely. Therefore I would like to know if either the VS + R++ combination or standalone CLion would be the most feature-rich. Environment-specific differences doesn't matter. As far as I've understood from your last two paragraphs the VS + R++ combination would be more feature-rich, right?Heaver
I'd say that R++ has more C++-specific analyses and functionality at the moment, but take my words with a grain of salt. Also, both products are actively developed and gain lots of features with every new release.Pageantry
S
5

I haven't used either one recently, but comparing the latest online help, CLion appears to have all the refactorings of ReSharper C++, plus several more:

https://www.jetbrains.com/help/resharper/Refactorings_for_CPP.html https://www.jetbrains.com/help/clion/refactoring-source-code.html

In addition, CLion provides several "Intention Actions" which appear to be similar to ReSharper's "Context Actions." The ReSharper help lists about 56 C++ specific context actions plus 14 language-independent context actions. The CLion help doesn't provide a complete list of intention actions, but looking at the scrollbar in the screenshot of the "Preferences" dialog, I'd guesstimate there about 180 intention actions.

https://www.jetbrains.com/help/clion/intention-actions.html https://www.jetbrains.com/help/resharper/Reference__Options__Languages__CPP__Context_Actions.html

Shiver answered 17/1, 2020 at 19:36 Comment(0)
I
3

Compared to Clion->Settings->Editor->Inspections->C++, ReSharper->Options->Code Inspection->Severity has a large multitude of settings including an entire section on "Potential Code Quality Issues".

However, CLion's built-in inspections plus its CLang-Tidy integration generally overlap with many of the ReSharper options. In my experience, (and I've used both tools) CLion is comprehensive/thorough and any edge that ReSharper has in the code inspection area is slight.

Also of note, a ReSharper inspection on the same solution runs faster than Clion's. Neither tool has exorbitantly long inspection duration but ReSharper's zippiness is evident.

I would expect that any gap between the two would be closed over time as CLion is becoming mature now.

Also note that the decision needn't be either/or. CLion can be used for overall work, while occasionally running a ReSharper C++ full solution inspection in Visual Studio. This can easily be done with a CMake project tree (for example).

Impasse answered 31/7, 2021 at 21:42 Comment(0)

© 2022 - 2024 — McMap. All rights reserved.