Class hierarchy and polymorphismus
salesperson.h
Go to the documentation of this file.
1 #pragma once
2 
3 #include "worker.h"
4 #include <iostream>
5 #include <string>
6 
9 class salesPerson : public Worker
10 {
11  public:
19  salesPerson(const std::string& name, float hours, float wageHour,
20  float commission, float percent);
22  virtual ~salesPerson() override;
23 
24  salesPerson(salesPerson const&) = default;
25  salesPerson& operator=(salesPerson const&) = default;
26 
30  void print(std::ostream& s) const override;
31 
35  float payment() const override
36  {return Worker::payment() + _commission*_percent;}
37 
41  void setSales(const float umsatz) { _commission=umsatz;}
42 
46  void setComission(const float percent) { _percent=percent;}
47 
48  protected:
49  private:
50  float _commission;
51  float _percent;
52 };
Definition: worker.h:10
float payment() const override
Definition: worker.h:32
void print(std::ostream &s) const override
Definition: salesperson.cpp:19
salesPerson(const std::string &name, float hours, float wageHour, float commission, float percent)
salesPerson(salesPerson const &)=default
salesPerson & operator=(salesPerson const &)=default
float payment() const override
Definition: salesperson.h:35
virtual ~salesPerson() override
Definition: salesperson.cpp:14
void setComission(const float percent)
Definition: salesperson.h:46
void setSales(const float umsatz)
Definition: salesperson.h:41