Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- //LABKA 2-4 v.1 Class
- #pragma once
- class Polynom {
- private:
- struct Monom {
- double coef{ 0 };
- double pow{ 0 };
- Monom* next;
- };
- Monom* first{ nullptr };
- public:
- Polynom() = default;
- Polynom(const Polynom&);
- Polynom(Polynom&&);
- Polynom& operator = (const Polynom&);
- Polynom& operator = (Polynom&&);
- Polynom& operator + (const Polynom&) const;
- Polynom& operator - (const Polynom&) const;
- Polynom& operator += (const Polynom&) const;
- ~Polynom();
- void in(std::istream&, std::string inputStreamType);
- void out(std::ostream&, std::string outputStreamType) const;
- void push(const Monom&);
- bool pop(Monom&);
- void dispose();
- class Iter {
- public:
- Iter() = default;
- Iter(Monom*);
- Monom& operator*();
- Iter& operator ++ (); // ++i
- Iter& operator ++ (int); // i++
- bool operator == (const Iter&);
- bool operator != (const Iter&);
- private:
- Monom* current{ nullptr };
- };
- Iter begin() const;
- Iter end() const;
- };
- void operator >>(std::istream& s, Polynom& p);
- void operator <<(std::ostream& s, const Polynom& p);
- void close(std::istream& s);
- void close(std::ostream& s);
Add Comment
Please, Sign In to add comment