diff options
Diffstat (limited to 'week10/Exercise05')
| -rw-r--r-- | week10/Exercise05/FN.cpp | 10 | ||||
| -rw-r--r-- | week10/Exercise05/FN.h | 9 | ||||
| -rw-r--r-- | week10/Exercise05/ModernFN.cpp | 13 | ||||
| -rw-r--r-- | week10/Exercise05/ModernFN.h | 10 |
4 files changed, 42 insertions, 0 deletions
diff --git a/week10/Exercise05/FN.cpp b/week10/Exercise05/FN.cpp new file mode 100644 index 0000000..877c551 --- /dev/null +++ b/week10/Exercise05/FN.cpp @@ -0,0 +1,10 @@ +#include "FN.h" +#include <iostream> + +FN::FN(unsigned facultyNumber) { + this->facultyNumber = facultyNumber; +} + +void FN::PrintOldFN() { + std::cout << facultyNumber; +} diff --git a/week10/Exercise05/FN.h b/week10/Exercise05/FN.h new file mode 100644 index 0000000..9310281 --- /dev/null +++ b/week10/Exercise05/FN.h @@ -0,0 +1,9 @@ +#pragma once + +class FN { + unsigned facultyNumber; + +public: + FN(unsigned facultyNumber); + void PrintOldFN(); +}; diff --git a/week10/Exercise05/ModernFN.cpp b/week10/Exercise05/ModernFN.cpp new file mode 100644 index 0000000..72b51f0 --- /dev/null +++ b/week10/Exercise05/ModernFN.cpp @@ -0,0 +1,13 @@ +#include "ModernFN.h" +#include <iostream> +#include <cstring> + +ModernFN::ModernFN(const char* fn) : FN(atoi(fn + 5)) { + strncpy(this->prefix, fn, 5); + this->prefix[5] = '\0'; +} + +void ModernFN::PrintNewFN() { + std::cout << this->prefix; + PrintOldFN(); +} diff --git a/week10/Exercise05/ModernFN.h b/week10/Exercise05/ModernFN.h new file mode 100644 index 0000000..86ca2b9 --- /dev/null +++ b/week10/Exercise05/ModernFN.h @@ -0,0 +1,10 @@ +#pragma once +#include "FN.h" + +class ModernFN : public FN { + char prefix[6]; + +public: + ModernFN(const char* fn); + void PrintNewFN(); +}; |
