Industrielle Fertigung
Industrielles Internet der Dinge | Industrielle Materialien | Gerätewartung und Reparatur | Industrielle Programmierung |
home  MfgRobots >> Industrielle Fertigung >  >> Industrial programming >> C Sprache

C++-Rekursion meistern: Konzepte, Beispiele und Best Practices

C++-Rekursion meistern

In diesem Tutorial erkunden wir rekursive Funktionen in C++, verstehen ihre Funktionsweise und sehen praktische Beispiele.

Eine Funktion, die sich selbst aufruft, wird rekursive Funktion genannt. Diese leistungsstarke Technik ist als Rekursion bekannt.


Wie Rekursion in C++ funktioniert

void recurse()
{
    // pre-recursion code
    recurse(); // rekursiver Aufruf
    // post-recursion code
}

int main()
{
    // setup code
    recurse();
    // teardown code
}

Die Abbildung unten veranschaulicht die wiederholte Selbstaufruf-Natur der Rekursion.

C++-Rekursion meistern: Konzepte, Beispiele und Best Practices

Rekursion läuft so lange, bis eine Basisbefriedigung erfüllt ist.

Um endlose Rekursion zu vermeiden, sorgt eine bedingte Wache (z. B. if…else) dafür, dass nur ein Zweig den rekursiven Aufruf ausführt.


Beispiel 1: Fakultät rekursiv berechnen

// Berechnet n! = 1 × 2 × … × n
#include <iostream>
using namespace std;

int factorial(int);

int main()
{
    int n, result;
    cout << "Enter a non-negative number: ";
    cin >> n;
    result = factorial(n);
    cout << "Factorial of " << n << " = " << result;
    return 0;
}

int factorial(int n)
{
    if (n > 1)
        return n * factorial(n - 1);
    else
        return 1;
}

Ausgabe

Enter a non-negative number: 4
Factorial of 4 = 24

Wie das Fakultätsprogramm funktioniert

C++-Rekursion meistern: Konzepte, Beispiele und Best Practices

Die factorial()-Funktion ruft sich wiederholt selbst auf, jedes Mal n um eins reduzierend. Wenn n auf 1 oder darunter fällt, gibt die Funktion 1 zurück, und die Rekursion wickelt sich auf, wodurch das finale Ergebnis entsteht.


Vor- und Nachteile der Rekursion in C++

Nachfolgend die wichtigsten Vor- und Nachteile der Rekursion.


Vorteile


Nachteile


Indem Sie verstehen, wann und wie Rekursion einzusetzen ist, können Sie saubereren, wartbareren C++-Code schreiben und gängige Fallstricke vermeiden.

C Sprache

  1. C++-Operatoren meistern: Ein vollständiger Leitfaden mit praktischen Beispielen
  2. C++-Kommentare: Best Practices für lesbaren, wartbaren Code
  3. Rekursion in C meistern: Best Practices & Abbruchbedingungen
  4. C++ Programmiersprache: Überblick & Kernfeatures
  5. C++ Konstanten & Literale: Typen, Syntax & Best Practices
  6. C++ Operatoren: Typen, Nutzung & Best Practices
  7. C++ Numerische Typen: Praktischer Leitfaden
  8. C++ Referenzen: Konzepte & Unterschiede zu Pointern
  9. C++ Templates: Generische Programmierung meistern
  10. C++ Präprozessor: Direktiven formen Ihren Code