diff --git a/homework/src/cpp/Makefile b/homework/src/cpp/Makefile index 1b4ca46f..0bd75773 100644 --- a/homework/src/cpp/Makefile +++ b/homework/src/cpp/Makefile @@ -1,3 +1,12 @@ +## Ausführen der Testfälle mit dem g++ +## +## "make" => führt alle Tests aus +## "make xyz" => führt die Test in der Datei xyz.cpp aus +## +## Beachten Sie auch die auskommentierten Tests - diese sollten von Ihrem +## Interpreter bzw. Compiler zurückgewiesen werden (analog zum g++/clang)! + + all: vars refs expr ifthenelse while func class inheritance polymorphie %: %.cpp driver.h diff --git a/homework/src/cpp/class.cpp b/homework/src/cpp/class.cpp index 7d74b2ec..d1496230 100644 --- a/homework/src/cpp/class.cpp +++ b/homework/src/cpp/class.cpp @@ -1,3 +1,9 @@ +/* + * Einfache Testfälle für Klassen in C++ + * + */ + + class A { public: // es reicht, wenn alles public ist (hier nur, damit das Beispiel mit g++ kompiliert) int value; diff --git a/homework/src/cpp/driver.h b/homework/src/cpp/driver.h index 02e19151..b5f088bc 100644 --- a/homework/src/cpp/driver.h +++ b/homework/src/cpp/driver.h @@ -1,3 +1,11 @@ +/* + * Der Code in dieser Datei dient dazu, die Testfälle mit dem g++ oder clang kompilieren zu können. + * + * Ihr Interpreter bzw. Compiler muss diesen Code in dieser Datei nicht verarbeiten können! + * + */ + + #include #define print_int(expr) std::cout << "print_int(" << #expr << "): " << expr << std::endl; diff --git a/homework/src/cpp/expr.cpp b/homework/src/cpp/expr.cpp index 29cacf32..88527137 100644 --- a/homework/src/cpp/expr.cpp +++ b/homework/src/cpp/expr.cpp @@ -1,3 +1,8 @@ +/* + * Einfache Testfälle für Ausdrücke und Zuweisungen in C++ + * + */ + int main() { // Einfache Ausdrücke diff --git a/homework/src/cpp/func.cpp b/homework/src/cpp/func.cpp index 0589b30c..201534fa 100644 --- a/homework/src/cpp/func.cpp +++ b/homework/src/cpp/func.cpp @@ -1,3 +1,8 @@ +/* + * Einfache Testfälle für Funktionen und Rekursion in C++ + * + */ + void foo() { print_char('f'); // 'f' diff --git a/homework/src/cpp/ifthenelse.cpp b/homework/src/cpp/ifthenelse.cpp index 79c95a32..6f988edb 100644 --- a/homework/src/cpp/ifthenelse.cpp +++ b/homework/src/cpp/ifthenelse.cpp @@ -1,3 +1,8 @@ +/* + * Einfache Testfälle für Kontrollfluss (if-then-else) in C++ + * + */ + int main() { // if-then-else diff --git a/homework/src/cpp/inheritance.cpp b/homework/src/cpp/inheritance.cpp index 34fcdde6..c9655ea9 100644 --- a/homework/src/cpp/inheritance.cpp +++ b/homework/src/cpp/inheritance.cpp @@ -1,3 +1,9 @@ +/* + * Einfache Testfälle für Einfach-Vererbung in C++ + * + */ + + class A { public: // es reicht, wenn alles public ist (hier nur, damit das Beispiel mit g++ kompiliert) A(int x) { aval = x; } diff --git a/homework/src/cpp/polymorphie.cpp b/homework/src/cpp/polymorphie.cpp index 35528ca2..940c102e 100644 --- a/homework/src/cpp/polymorphie.cpp +++ b/homework/src/cpp/polymorphie.cpp @@ -1,3 +1,9 @@ +/* + * Einfache Testfälle für statische und dynamische Polymorphie in C++ + * + */ + + class A { public: // es reicht, wenn alles public ist (hier nur, damit das Beispiel mit g++ kompiliert) A(int x) { aval = x; } diff --git a/homework/src/cpp/refs.cpp b/homework/src/cpp/refs.cpp index 2d02b2df..f4a63c73 100644 --- a/homework/src/cpp/refs.cpp +++ b/homework/src/cpp/refs.cpp @@ -1,3 +1,8 @@ +/* + * Einfache Testfälle für Referenzen in C++ + * + */ + int main() { bool a = true; diff --git a/homework/src/cpp/vars.cpp b/homework/src/cpp/vars.cpp index c43ff39c..8685826b 100644 --- a/homework/src/cpp/vars.cpp +++ b/homework/src/cpp/vars.cpp @@ -1,3 +1,8 @@ +/* + * Einfache Testfälle für Variablen in C++ + * + */ + int main() { // Variablen mit Basisdatentypen (ohne Initialisierung) diff --git a/homework/src/cpp/while.cpp b/homework/src/cpp/while.cpp index 783b00a8..909402b8 100644 --- a/homework/src/cpp/while.cpp +++ b/homework/src/cpp/while.cpp @@ -1,3 +1,8 @@ +/* + * Einfache Testfälle für Kontrollfluss (while) in C++ + * + */ + int main() { // simple while-loop