Modernize Your C++ code with CppDepend

Modernize your C++ code

C++11 includes several additions to the core language and extends the C++ standard library. Some of these new features are very easy to use and bring a big added value to your C++ projects.

It's interesting to detect automatically places where we can use some C++11 new features. For such needs clang-modernizer is a standalone tool used to automatically convert C++ code, written against old standards, to use features of the newest C++ standard where appropriate.

The CppDepend windows version integrates now the clang-modernize tool to detect the places where the following features could be used:

  • Override: Detect places where you can add the override specifier to member functions that override a virtual function in a base class and that don’t already have the specifier

  • Loop Convert: Detect loops like for(...; ...; ...) to replace them with the new range-based loops in C++11. And give you the new range loop expression to use.

  • Pass-By-Value: Detect const-ref parameters that would benefit from using the pass-by-value idiom.

  • auto_ptr: Detect the uses of the deprecated std::auto_ptr by std::unique_ptr.

  • auto specifier: Detect places where to use of the auto type specifier in variable declarations.

  • nullptr: Detect null literals to be replaced by nullptr where applicable.