Website Summary Files Commits Branches @commit @diff @stats
path: root / GetAndSet
diff options
context:
space:
mode:
1 files changed, 0 insertions, 74 deletions
-rw-r--r--GetAndSet/Beer.hpp74
diff --git a/GetAndSet/Beer.hpp b/GetAndSet/Beer.hpp
deleted file mode 100644
index ef0ed4b..0000000
--- a/GetAndSet/Beer.hpp
+++ /dev/null
@@ -1,74 +0,0 @@
-#include <iostream>
-using namespace std;
-
-const int MAXBEERML = 500;
-const int MINBEERML = 330;
-
-class Beer
-{
-public:
- Beer(const char* mark, int ml);
-
- void printAddress() const;
-
- void printBeer() const;
- void setMl(int ml);
-
- void setMark(const char* mark);
-
- int getMl() const; // const сложен тук означава, че метода не променя член-данните на класа.Съответно можем да го викаме от константни обекти
-
- const char* getMark() const;
-
-private:
-
- char mark[20]; //Стринг с максимална дължина 19, понеже 1 символ ни трябва за '\0'
- int ml;
-};
-
-Beer::Beer(const char* mark, int ml)
-{
- setMark(mark);
- setMl(ml);
-}
-void Beer::printAddress() const
-{
- cout << this << endl;
-}
-void Beer::printBeer() const
-{
- cout << mark << " " << ml << endl;
-}
-void Beer::setMl(int ml)
-{
- if (ml < MINBEERML)
- ml = MINBEERML;
- else if (ml > MAXBEERML)
- ml = MAXBEERML;
- this->ml = ml;
-}
-void Beer::setMark(const char* mark)
-{
- int len = strlen(mark);
-
- if (len >= 20 || len == 0) //ако ни дадат невалидна марка на бирата (стринг с дължина >= 20 )
- this->mark[0] = '\0'; //правим марката да е празния стринг
- else
- strcpy(this->mark, mark);
-}
-int Beer::getMl() const
-{
- return ml;
-}
-const char* Beer::getMark() const
-{
- return mark;
-}
-
-
-int main()
-{
- Beer t("Zagorka", 5); // 5 е невалидно количество бира. Но в конструктора извикваме setML, която се грижи в променливата да не попаднат невалидни данни.
- t.setMl(330);
- t.printBeer();
-}