Livestreams Tips & Tricks

Webinar Recording: CLion, A Modern C++ IDE

The recording of our May 6th webinar, CLion: A Modern C++ IDE, is now available on JetBrainsTV YouTube channel.

In this webinar, Dmitri Nesteruk shows how you can enhance your productivity while developing in C and C++ with our new cross-platform C/C++ IDE called CLion.

https://www.youtube.com/watch?v=eqQCl3PAr7U

Below are some questions from our webinar answered by Dmitri and Anastasia.

Q: Is it possible to export and enforce code style settings within organisation?
A: Yes, it is. File | Export Settings will help you to export the preferred settings like Code Style, Live Template, UI Settings and much more:
export_settings
File | Import Settings will assist with importing the derived .jar file.

And even more, if you’d like to store the code style settings for the selected project in the Version Control System, press ‘Manage’ button in Editor | Code Style settings, select the configured coding style scheme and press ‘Copy to Project’. The selected code style is saved in the .idea directory in the file codeStyleSettings.xml, so you can now submit this file to VCS.

Q: Can I replace #pragma once with the standard #ifndef/#define include guards in header generation?
A: Dmitri has the default File Templates for C++ header updated with “#pragma once”. You can do this as well, overriding the default templates in Preferences/Settings | Editor | File and Code Templates:
file_templates
As you can see, the standard #ifndef/#define include guards are there by default.

Q:Is there any support for msbuild? I would like to use CLion with UE4 development.
A: CLion is using CMake as a build system for now, and supports GCC/Clang compilers. MSVC and msbuild are not in our roadmap, at least for now, because of the other C++ product we’ve released recently called ReSharper C++, that is a plugin for Visual Studio.

However, as far as we know Unreal Engine development can be based on CMake as well. Following this answer:
“You can definitively get a CMake-driven unreal project. In 4.5 preview, Unreal Engine Linux build process ‘natively’ generates a CMake file (and makefile so) which could serve as input to build the whole engine in whatever IDE you want (I build UE4Editor from QtCreator).”
So feel free to try and share your experience with us!

Q: Does CLion support C++14? Is there an overview of the supported language features?
A: C++14 is not supported yet. Now CLion supports all the C++ standards up to C++11 except for the user defined literals, constexpr and variadic templates. This and some other useful feature related information can be found in our online help.

Q: Where is “override” keyword at autogenerated Human::walk?
A: CLion allows you to select the override specifier to be generated when overriding virtual function (Dmitri followed the other way). However it’s available only in case you’ve pointed C++11 flag in CMake. Otherwise CLion will assume you can’t use override.

Q: Does CLion use the same key bindings as IntelliJ?
A: CLion includes a lot of keymaps bundled. You can select from IntelliJ-based one, Emacs, Eclipse, Visual Studio, Xcode and more.

Thanks to all the attendees for the questions! If you still have some, please, contact Dmitri or our team.

About the Presenter:

Dmitri NesterukDmitri Nesteruk is a developer, speaker, podcaster and technical evangelist. His interests lie in software development and integration practices in the areas of computation, quantitative finance and algorithmic trading. His technological interests include C#, F# and C++ programming as well high-performance computing using technologies such as CUDA. He has been a C# MVP since 2009.

Read more about Tips&Tricks in CLion, follow our blog and twitter (@clion_ide).

Thank you and develop with pleasure!

image description