Untitled
unknown
plain_text
2 years ago
1.7 kB
2
Indexable
Never
enum class KatPJ { A, B, C, D }; class Kierowca { private: int m_staz; KatPJ m_uprawnienie; public: void setUprawnienie(KatPJ i_upr) { m_uprawnienie = i_upr; } KatPJ getUprawnienie() { return m_uprawnienie; } int getStaz() { return m_staz; } void zwiekszStaz() { m_staz++; } }; class Motor { private: double m_predkosc; char m_numerRej[9]; public: void setPredkosc(double i_pred) { m_predkosc = (i_pred > 260) ? i_pred : 260; } void setNumerRej(const char* i_num) { strncpy(m_numerRej, i_num, 8); } const char* getNumerRej() { return m_numerRej; } double getPredkosc() { return m_predkosc; } }; class Wypozyczenie { private: Kierowca* kierowca = nullptr; Motor* motor = nullptr; public: Wypozyczenie(Kierowca* k, Motor* m); void zmienKierowce(Kierowca* k); void zmienMotor(Motor* m); bool sprawdz(); int stazKierowcy(); const char* getNumery(); ~Wypozyczenie(); }; Wypozyczenie::Wypozyczenie(Kierowca* k, Motor* m) { //Kiedy kierowca nie ma A nie przypisuj motora ani kierowcy if (k->getUprawnienie() == KatPJ::A) { motor = m; kierowca = k; } } void Wypozyczenie::zmienKierowce(Kierowca* k) { //Kiedy kierowca nie ma A nie zmieniaj kierowcy if (k->getUprawnienie() == KatPJ::A) kierowca = k; } void Wypozyczenie::zmienMotor(Motor* m) { motor = m; } bool Wypozyczenie::sprawdz() { if (kierowca->getUprawnienie() != KatPJ::A) { kierowca = nullptr; return false; } return true; } int Wypozyczenie::stazKierowcy() { return kierowca->getStaz(); } const char* Wypozyczenie::getNumery() { return motor->getNumerRej(); } Wypozyczenie::~Wypozyczenie() { kierowca = nullptr; motor = nullptr; } int main() { }