📄 rational.h
字号:
// rational.h: declaration of Rational ADT
#ifndef RATIONAL_H
#define RATIONAL_H
#include <iostream>
using namespace std;
// Rational ADT: class description
class Rational {
public: // emeber functions
// default constructor
Rational();
// a second constructor
Rational(int number, int denom=1);
// destructor
~Rational();
// copy constructor
Rational(const Rational &r);
// member assignment
Rational& operator=(const Rational &r);
// can it be: void operator=(const Rational &r); ?????
// some arithmetic and stream facilitators
Rational Add(const Rational &r) const;
Rational Sub(const Rational &r) const;
Rational Multiply(const Rational &r) const;
Rational Divide(const Rational &r) const;
void Insert(ostream &sout) const;
void Extract(istream &sin);
protected:
// inspectors
int GetNumerator() const;
int GetDenominator() const;
// mutators
void SetNumerator(int numer);
void SetDenominator(int denom);
private:
// data members
int NumeratorValue;
int DenominatorValue;
};
// Rational ADT: auxiliary operator description
Rational operator+(const Rational &r, const Rational &s);
Rational operator-(const Rational &r, const Rational &s);
Rational operator*(const Rational &r, const Rational &s);
Rational operator/(const Rational &r, const Rational &s);
ostream& operator<<(ostream &sout, const Rational &s);
istream& operator>>(istream &sin, Rational &r);
// can they be: void operator<<(ostream &sout, const Rational &); ?????
#endif
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -