Cppdepend


CppDepend is a static analysis tool for C/C++ code. This tool supports a large number of code metrics, allows for visualization of dependencies using directed graphs and dependency matrix. The tools also performs code base snapshots comparison, and validation of architectural and quality rules. User-defined rules can be written using LINQ queries. This possibility is named CQLinq. The tool also comes with a large number of predefined CQLinq code rules.

Features

The main features of CppDepend are:
New features in v2025.1
  • MISRA C++:2023 Compliance Support
  • Updated Clang and Clang-Tidy Integration
  • New Summary View for Code Elements

Code Rule through LINQ Query (CQLinq)

The tool proposes live code query and code rule through LINQ query.
This is one of the innovations of CppDepend. For example:
- Classes inherit from a particular class:
// classes inherit from a particular class
from t in Types
where t.IsClass && t.DeriveFrom
select t
- The 10 most complex methods
// The 10 most complex methods
.Take
In addition, the tool proposes a live CQLinq query editor with code completion and embedded documentation.