Unterprogramme in C++ schreiben?

4 Antworten

Einfach (statische oder dynamische) Bibliotheken bauen, zur Not auch als Header-only Templates.

Woher ich das weiß:Berufserfahrung

wie die beiden anderen schon geschrieben haben einfach in eine eigene Datei Schreiben und einen Header mit den Deklarationen dazu. Dann kannst du es auch einzeln kompilieren, um dir bei großen Programmen Zeit zu sparen.
Beispiel:

// Datei mathe.cpp
#include "mathe.h"
int addieren(int a, int b) {
    return a + b;
}
int subtrahieren(int a, int b) {
    return a - b;
}


// Datei mathe.h
int addieren(int, int);
int subtrahieren(int, int);

Dann kannst du die C++ Datei mit den Funktionen z.B. mit g++ kompilieren:

g++ -c -o mathe.o mathe.cpp

In deinem Hauptprogramm includierst du dann auch einfach die Header Datei und kannst die Funktionen benutzen:

// Datei rechnen.cpp
#include "mathe.h"
#include <iostream>

int main(){
  int erg = addieren(1, 1);
  std::cout << "1 + 1 = " << erg << std::endl;
  return 0;
};

Beim kompilieren musst du für den Linker dann noch angeben, dass die Datei mathe.o auch zum Hauptprogramm dazugehört. Also zum Beispiel so:

g++ -o rechnen.exe rechnen.cpp mathe.o

Das ist bei großen Biblotheken schneller als wenn du alles neu kompilieren musst auch wenn du nichts geändert hast (obwohl man bei richtig großen Programmen eher ein Makefile für sowas schreibt) ;)

Guten Abend, weiß hier jemand wie man Unterprogramme in C++ schreiben kann?Also Programme in denen Funktionen deklariert werden die in anderen Programmen aufgerufen werden.Das dient zur Übersicht.Es wird z.B. viel in Arduino benutzt.

Indem Du die Funktionalität in eigene Quelldateien packst, mit dazu passendne Headern und entsprechend inkludierst.