Defining Class Functions http://cs.mst.edu Definition and Use - - PowerPoint PPT Presentation

defining class functions
SMART_READER_LITE
LIVE PREVIEW

Defining Class Functions http://cs.mst.edu Definition and Use - - PowerPoint PPT Presentation

Defining Class Functions http://cs.mst.edu Definition and Use //fraction.h #include fraction.h #ifndef FRACTION_H #define FRACTION_H int main() { class Fraction Fraction f, g; { f.m_Numerator = 7; public: f.readin(); void


slide-1
SLIDE 1

http://cs.mst.edu

Defining Class Functions

slide-2
SLIDE 2

http://cs.mst.edu

Definition and Use

//fraction.h #ifndef FRACTION_H #define FRACTION_H class Fraction { public: void readin(); void print(); Fraction reciprocal(); void unreduce(const int m); private: int m_Numerator; int m_Denominator; }; #endif #include “fraction.h” int main() { Fraction f, g; f.m_Numerator = 7; f.readin(); f.print(); f.unreduce(5); return 0; }

slide-3
SLIDE 3

http://cs.mst.edu

Function Definitions

//fraction.h #ifndef FRACTION_H #define FRACTION_H class Fraction { public: void readin(); void print(); Fraction reciprocal(); void unreduce(const int m); private: int m_Numerator; int m_Denominator; }; #endif

slide-4
SLIDE 4

http://cs.mst.edu

Function Definitions

//fraction.h #ifndef FRACTION_H #define FRACTION_H class Fraction { public: void readin(); void print(); Fraction reciprocal(); void unreduce(const int m); private: int m_Numerator; int m_Denominator; }; #endif //fraction.cpp #include “fraction.h” #include <iostream> using std::cout; using std::cin;

slide-5
SLIDE 5

http://cs.mst.edu

Function Definitions

//fraction.h #ifndef FRACTION_H #define FRACTION_H class Fraction { public: void readin(); void print(); Fraction reciprocal(); void unreduce(const int m); private: int m_Numerator; int m_Denominator; }; #endif //fraction.cpp #include “fraction.h” #include <iostream> using std::cout; using std::cin; void Fraction::readin() { }

slide-6
SLIDE 6

http://cs.mst.edu

Function Definitions

//fraction.h #ifndef FRACTION_H #define FRACTION_H class Fraction { public: void readin(); void print(); Fraction reciprocal(); void unreduce(const int m); private: int m_Numerator; int m_Denominator; }; #endif //fraction.cpp #include “fraction.h” #include <iostream> using std::cout; using std::cin; void Fraction::readin() { cout<<“enter numerator: ”; cin>>m_Numerator; cout<<“enter denominator: ”; cin>>m_Denominator; return; }

slide-7
SLIDE 7

http://cs.mst.edu

Function Definitions

//fraction.h #ifndef FRACTION_H #define FRACTION_H class Fraction { public: void readin(); void print(); Fraction reciprocal(); void unreduce(const int m); private: int m_Numerator; int m_Denominator; }; #endif

//fraction.cpp continued...

slide-8
SLIDE 8

http://cs.mst.edu

Function Definitions

//fraction.h #ifndef FRACTION_H #define FRACTION_H class Fraction { public: void readin(); void print(); Fraction reciprocal(); void unreduce(const int m); private: int m_Numerator; int m_Denominator; }; #endif

//fraction.cpp continued... void Fraction::print() { cout<<“(”<<m_Numerator <<“/”<<m_Denominator<<“)”; return; }

slide-9
SLIDE 9

http://cs.mst.edu

Function Definitions

//fraction.h #ifndef FRACTION_H #define FRACTION_H class Fraction { public: void readin(); void print(); Fraction reciprocal(); void unreduce(const int m); private: int m_Numerator; int m_Denominator; }; #endif

//fraction.cpp continued... void Fraction::print() { cout<<“(”<<m_Numerator <<“/”<<m_Denominator<<“)”; return; } Fraction Fraction::reciprocal() { Fraction returnable; returnable.m_Numerator = m_Denominator; returnable.m_Denominator = m_Numerator; return returnable; }

slide-10
SLIDE 10

http://cs.mst.edu

Function Definitions

//fraction.h #ifndef FRACTION_H #define FRACTION_H class Fraction { public: void readin(); void print(); Fraction reciprocal(); void unreduce(const int m); private: int m_Numerator; int m_Denominator; }; #endif

//fraction.cpp continued... void Fraction::print() { cout<<“(”<<m_Numerator <<“/”<<m_Denominator<<“)”; return; } Fraction Fraction::reciprocal() { Fraction returnable; returnable.m_Numerator = m_Denominator; returnable.m_Denominator = m_Numerator; return returnable; } void Fraction::unreduce (const int m) { m_Numerator*=m; m_Denominator*=m; return; }

slide-11
SLIDE 11

http://cs.mst.edu

Fraction in Use

#include “fraction.h” int main() { Fraction f1, f2, f3; f1.readin(); f1.print(); f2.readin(); f2.print(); f2.unreduce(2); f2.print(); f3 = f1.reciprocal(); f3 = f1 + f2; ...

slide-12
SLIDE 12

http://cs.mst.edu

Fraction in Use

//fraction.h #ifndef FRACTION_H #define FRACTION_H class Fraction { public: void readin(); void print(); Fraction reciprocal(); void unreduce(const int m); private: int m_Numerator; int m_Denominator; }; #endif #include “fraction.h” int main() { Fraction f1, f2, f3; f1.readin(); f1.print(); f2.readin(); f2.print(); f2.unreduce(2); f2.print(); f3 = f1.reciprocal(); f3 = f1 + f2; ...

slide-13
SLIDE 13

http://cs.mst.edu

Fraction in Use

void Fraction::readin() { cout<<“enter numerator: ”; cin>>m_Numerator; cout<<“enter denominator: ”; cin>>m_Denominator; return; } #include “fraction.h” int main() { Fraction f1, f2, f3; f1.readin(); f1.print(); f2.readin(); f2.print(); f2.unreduce(2); f2.print(); f3 = f1.reciprocal(); f3 = f1 + f2; ...

slide-14
SLIDE 14

http://cs.mst.edu

Fraction in Use

void Fraction::print() { cout<<“(”<<m_Numerator <<“/”<<m_Denominator<<“)”; return; } #include “fraction.h” int main() { Fraction f1, f2, f3; f1.readin(); f1.print(); f2.readin(); f2.print(); f2.unreduce(2); f2.print(); f3 = f1.reciprocal(); f3 = f1 + f2; ...

slide-15
SLIDE 15

http://cs.mst.edu

Fraction in Use

void Fraction::readin() { cout<<“enter numerator: ”; cin>>m_Numerator; cout<<“enter denominator: ”; cin>>m_Denominator; return; } #include “fraction.h” int main() { Fraction f1, f2, f3; f1.readin(); f1.print(); f2.readin(); f2.print(); f2.unreduce(2); f2.print(); f3 = f1.reciprocal(); f3 = f1 + f2; ...

slide-16
SLIDE 16

http://cs.mst.edu

Fraction in Use

void Fraction::print() { cout<<“(”<<m_Numerator <<“/”<<m_Denominator<<“)”; return; } #include “fraction.h” int main() { Fraction f1, f2, f3; f1.readin(); f1.print(); f2.readin(); f2.print(); f2.unreduce(2); f2.print(); f3 = f1.reciprocal(); f3 = f1 + f2; ...

slide-17
SLIDE 17

http://cs.mst.edu

Fraction in Use

void Fraction::unreduce (const int m) { m_Numerator*=m; m_Denominator*=m; return; } #include “fraction.h” int main() { Fraction f1, f2, f3; f1.readin(); f1.print(); f2.readin(); f2.print(); f2.unreduce(2); f2.print(); f3 = f1.reciprocal(); f3 = f1 + f2; ...

slide-18
SLIDE 18

http://cs.mst.edu

Fraction in Use

void Fraction::print() { cout<<“(”<<m_Numerator <<“/”<<m_Denominator<<“)”; return; } #include “fraction.h” int main() { Fraction f1, f2, f3; f1.readin(); f1.print(); f2.readin(); f2.print(); f2.unreduce(2); f2.print(); f3 = f1.reciprocal(); f3 = f1 + f2; ...

slide-19
SLIDE 19

http://cs.mst.edu

Fraction in Use

Fraction Fraction::reciprocal() { Fraction returnable; returnable.m_Numerator = m_Denominator; returnable.m_Denominator = m_Numerator; return returnable; } #include “fraction.h” int main() { Fraction f1, f2, f3; f1.readin(); f1.print(); f2.readin(); f2.print(); f2.unreduce(2); f2.print(); f3 = f1.reciprocal(); f3 = f1 + f2; ...

slide-20
SLIDE 20

http://cs.mst.edu

Fraction in Use

#include “fraction.h” int main() { Fraction f1, f2, f3; f1.readin(); f1.print(); f2.readin(); f2.print(); f2.unreduce(2); f2.print(); f3 = f1.reciprocal(); f3 = f1 + f2; ... ??? Fraction::operator+(???) { ??? }

slide-21
SLIDE 21

http://cs.mst.edu

B-b-b-but!

#include “fraction.h” int main() { Fraction f1, f2, f3; f1.readin(); f1.print(); f2.readin(); f2.print(); f2.unreduce(2); f2.print(); f3 = f1.reciprocal(); f3 = f1 + f2; ... ??? Fraction::operator=(???) { ??? }

slide-22
SLIDE 22

http://cs.mst.edu

End of Session