scitools.com

← Metric catalog

Max Strict Modified Cyclomatic Complexity is one of the source-code metrics Understand computes across 17+ languages — browse them in the GUI, export and track them, or script them with the Python API.

Max Strict Modified Cyclomatic Complexity

API ID: MaxCyclomaticStrictModified
Languages: Ada, Basic, C#, C++, Fortran, Java, Jovial, Pascal, Python, Rust, Web
Targets: Architectures, Classes, Files, Modules, Packages, Project

Maximum strict modified cyclomatic complexity of nested functions or methods.

For example:


class SayHello {
public:
  SayHello() {}
  void printHello();
};

void SayHello::printHello() {
  switch (i) {
    ...
  }
}

void cyclomaticDemo() {
  ...
}

int func();          // declared here, not defined - excluded from aggregates

int main() {
  ...
}

SayHello(), printHello(), cyclomaticDemo(), and main() have Strict Modified Cyclomatic Complexity of 1, 3, 10, and 2. func() is only declared, not defined, so it isn't counted. For the SayHello class, the maximum is 3. For the whole file (sample.cpp), the maximum is 10.

See Sum and Average Strict Modified Cyclomatic Complexity for the other aggregations.


Targets By Language: Configuration: