Modernize Legacy Code with CppDepend

Modernize Your Legacy 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 add a lot of value to your C++ projects.

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

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

  • Override: Detects 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: Detects loops like for(...; ...; ...) and replaces them with the new range-based loops in C++11. this also gives you the new range loop expression to use.
  • Pass-By-Value: Detects const-ref parameters that would benefit from using the pass-by-value idiom.
  • auto_ptr: Detects the uses of the deprecated std::auto_ptr by std::unique_ptr.
  • auto specifier: Detects places where to use of the auto type specifier in variable declarations.
  • nullptr: Detects null literals that should be replaced by nullptr where applicable.

CppDepend offers a wide range of features. It is often described as a Swiss Army Knife for C and C++ developers.

Start Free Trial