http://cs.mst.edu negation operator. code trace // main.cpp... g = -f;... // fraction.h... class...

18
http://cs.mst.edu Negation Operator

Upload: hilary-mckenzie

Post on 26-Dec-2015

214 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: Http://cs.mst.edu Negation Operator.  Code Trace // main.cpp... g = -f;... // fraction.h... class Fraction { friend Fraction operator-(const

http://cs.mst.edu

Negation Operator

Page 2: Http://cs.mst.edu Negation Operator.  Code Trace // main.cpp... g = -f;... // fraction.h... class Fraction { friend Fraction operator-(const

http://cs.mst.edu

Code Trace// main.cpp ... g = -f; ...// fraction.h...class Fraction{ friend Fraction operator-(const Fraction & rhs); ...// fraction.cppFraction operator-(const Fraction & rhs){ Fraction temp; temp.m_Numerator = -rhs.m_Numerator; temp.m_Denominator = rhs.m_Denominator; return temp;}

Page 3: Http://cs.mst.edu Negation Operator.  Code Trace // main.cpp... g = -f;... // fraction.h... class Fraction { friend Fraction operator-(const

http://cs.mst.edu

Code Trace// main.cpp ... g = -f; ...// fraction.h...class Fraction{ friend Fraction operator-(const Fraction & rhs); ...// fraction.cppFraction operator-(const Fraction & rhs){ Fraction temp; temp.m_Numerator = -rhs.m_Numerator; temp.m_Denominator = rhs.m_Denominator; return temp;}

m_Numerator: 9m_Denominator: 64

f in main

m_Numerator: 9m_Denominator: 32

g in main

Page 4: Http://cs.mst.edu Negation Operator.  Code Trace // main.cpp... g = -f;... // fraction.h... class Fraction { friend Fraction operator-(const

http://cs.mst.edu

Code Trace// main.cpp ... g = -f; ...// fraction.h...class Fraction{ friend Fraction operator-(const Fraction & rhs); ...// fraction.cppFraction operator-(const Fraction & rhs){ Fraction temp; temp.m_Numerator = -rhs.m_Numerator; temp.m_Denominator = rhs.m_Denominator; return temp;}

m_Numerator: 9m_Denominator: 64

f in mainrhs in operator-

m_Numerator: 9m_Denominator: 32

g in main*this in operator-

Page 5: Http://cs.mst.edu Negation Operator.  Code Trace // main.cpp... g = -f;... // fraction.h... class Fraction { friend Fraction operator-(const

http://cs.mst.edu

Code Trace// main.cpp ... g = -f; ...// fraction.h...class Fraction{ friend Fraction operator-(const Fraction & rhs); ...// fraction.cppFraction operator-(const Fraction & rhs){ Fraction temp; temp.m_Numerator = -rhs.m_Numerator; temp.m_Denominator = rhs.m_Denominator; return temp;}

m_Numerator: 9m_Denominator: 64

f in mainrhs in operator-

m_Numerator: 9m_Denominator: 32

g in main*this in operator-

m_Numerator: ?m_Denominator: ?

temp

Page 6: Http://cs.mst.edu Negation Operator.  Code Trace // main.cpp... g = -f;... // fraction.h... class Fraction { friend Fraction operator-(const

http://cs.mst.edu

Code Trace// main.cpp ... g = -f; ...// fraction.h...class Fraction{ friend Fraction operator-(const Fraction & rhs); ...// fraction.cppFraction operator-(const Fraction & rhs){ Fraction temp; temp.m_Numerator = -rhs.m_Numerator; temp.m_Denominator = rhs.m_Denominator; return temp;}

m_Numerator: 9m_Denominator: 64

f in mainrhs in operator-

m_Numerator: 9m_Denominator: 32

g in main*this in operator-

m_Numerator: -9m_Denominator: ?

temp

Page 7: Http://cs.mst.edu Negation Operator.  Code Trace // main.cpp... g = -f;... // fraction.h... class Fraction { friend Fraction operator-(const

http://cs.mst.edu

Code Trace// main.cpp ... g = -f; ...// fraction.h...class Fraction{ friend Fraction operator-(const Fraction & rhs); ...// fraction.cppFraction operator-(const Fraction & rhs){ Fraction temp; temp.m_Numerator = -rhs.m_Numerator; temp.m_Denominator = rhs.m_Denominator; return temp;}

m_Numerator: 9m_Denominator: 64

f in mainrhs in operator-

m_Numerator: 9m_Denominator: 32

g in main*this in operator-

m_Numerator: -9m_Denominator: 64

temp

Page 8: Http://cs.mst.edu Negation Operator.  Code Trace // main.cpp... g = -f;... // fraction.h... class Fraction { friend Fraction operator-(const

http://cs.mst.edu

Code Trace// main.cpp ... g = -f; ...// fraction.h...class Fraction{ friend Fraction operator-(const Fraction & rhs); ...// fraction.cppFraction operator-(const Fraction & rhs){ Fraction temp; temp.m_Numerator = -rhs.m_Numerator; temp.m_Denominator = rhs.m_Denominator; return temp;}

m_Numerator: 9m_Denominator: 64

f in mainrhs in operator-

m_Numerator: 9m_Denominator: 32

g in main*this in operator-

m_Numerator: -9m_Denominator: 64

temp

Page 9: Http://cs.mst.edu Negation Operator.  Code Trace // main.cpp... g = -f;... // fraction.h... class Fraction { friend Fraction operator-(const

http://cs.mst.edu

Code Trace// main.cpp ... g = -f; ...// fraction.h...class Fraction{ friend Fraction operator-(const Fraction & rhs); ...// fraction.cppFraction operator-(const Fraction & rhs){ Fraction temp; temp.m_Numerator = -rhs.m_Numerator; temp.m_Denominator = rhs.m_Denominator; return temp;}

m_Numerator: 9m_Denominator: 64

f in mainrhs in operator-

m_Numerator: -9m_Denominator: 64

g in main*this in operator-

m_Numerator: -9m_Denominator: 64

temp

Page 10: Http://cs.mst.edu Negation Operator.  Code Trace // main.cpp... g = -f;... // fraction.h... class Fraction { friend Fraction operator-(const

http://cs.mst.edu

Not Operator

Page 11: Http://cs.mst.edu Negation Operator.  Code Trace // main.cpp... g = -f;... // fraction.h... class Fraction { friend Fraction operator-(const

http://cs.mst.edu

Code Trace// main.cpp ... !f; ...// fraction.h...class Fraction{ void operator!(); ...// fraction.cppvoid Fraction::operator ! (){    int temp = m_Numerator;    m_Numerator = m_Denominator;    m_Denominator = temp;    return;}

Page 12: Http://cs.mst.edu Negation Operator.  Code Trace // main.cpp... g = -f;... // fraction.h... class Fraction { friend Fraction operator-(const

http://cs.mst.edu

Code Trace// main.cpp ... !f; ...// fraction.h...class Fraction{ void operator!(); ...// fraction.cppvoid Fraction::operator ! (){    int temp = m_Numerator;    m_Numerator = m_Denominator;    m_Denominator = temp;    return;}

m_Numerator: 9m_Denominator: 64

f in main

Page 13: Http://cs.mst.edu Negation Operator.  Code Trace // main.cpp... g = -f;... // fraction.h... class Fraction { friend Fraction operator-(const

http://cs.mst.edu

Code Trace// main.cpp ... !f; ...// fraction.h...class Fraction{ void operator!(); ...// fraction.cppvoid Fraction::operator ! (){    int temp = m_Numerator;    m_Numerator = m_Denominator;    m_Denominator = temp;    return;}

m_Numerator: 9m_Denominator: 64

f in main*this in operator!

Page 14: Http://cs.mst.edu Negation Operator.  Code Trace // main.cpp... g = -f;... // fraction.h... class Fraction { friend Fraction operator-(const

http://cs.mst.edu

Code Trace// main.cpp ... !f; ...// fraction.h...class Fraction{ void operator!(); ...// fraction.cppvoid Fraction::operator ! (){    int temp = m_Numerator;    m_Numerator = m_Denominator;    m_Denominator = temp;    return;}

m_Numerator: 9m_Denominator: 64

f in main*this in operator!

9

temp

Page 15: Http://cs.mst.edu Negation Operator.  Code Trace // main.cpp... g = -f;... // fraction.h... class Fraction { friend Fraction operator-(const

http://cs.mst.edu

Code Trace// main.cpp ... !f; ...// fraction.h...class Fraction{ void operator!(); ...// fraction.cppvoid Fraction::operator ! (){    int temp = m_Numerator;    m_Numerator = m_Denominator;    m_Denominator = temp;    return;}

m_Numerator: 64m_Denominator: 64

f in main*this in operator!

9

temp

Page 16: Http://cs.mst.edu Negation Operator.  Code Trace // main.cpp... g = -f;... // fraction.h... class Fraction { friend Fraction operator-(const

http://cs.mst.edu

Code Trace// main.cpp ... !f; ...// fraction.h...class Fraction{ void operator!(); ...// fraction.cppvoid Fraction::operator ! (){    int temp = m_Numerator;    m_Numerator = m_Denominator;    m_Denominator = temp;    return;}

m_Numerator: 64m_Denominator: 9

f in main*this in operator!

9

temp

Page 17: Http://cs.mst.edu Negation Operator.  Code Trace // main.cpp... g = -f;... // fraction.h... class Fraction { friend Fraction operator-(const

http://cs.mst.edu

Code Trace// main.cpp ... !f; ...// fraction.h...class Fraction{ void operator!(); ...// fraction.cppvoid Fraction::operator ! (){    int temp = m_Numerator;    m_Numerator = m_Denominator;    m_Denominator = temp;    return;}

m_Numerator: 64m_Denominator: 9

f in main*this in operator!

9

temp

Page 18: Http://cs.mst.edu Negation Operator.  Code Trace // main.cpp... g = -f;... // fraction.h... class Fraction { friend Fraction operator-(const

http://cs.mst.edu

End of Session