Download presentation
Presentation is loading. Please wait.
Published byHilary McKenzie Modified over 9 years ago
1
http://cs.mst.edu Negation Operator
2
http://cs.mst.edu Code Trace // main.cpp... g = -f;... // fraction.h... class Fraction { friend Fraction operator-(const Fraction & rhs);... // fraction.cpp Fraction operator-(const Fraction & rhs) { Fraction temp; temp.m_Numerator = -rhs.m_Numerator; temp.m_Denominator = rhs.m_Denominator; return temp; }
3
http://cs.mst.edu Code Trace // main.cpp... g = -f;... // fraction.h... class Fraction { friend Fraction operator-(const Fraction & rhs);... // fraction.cpp Fraction operator-(const Fraction & rhs) { Fraction temp; temp.m_Numerator = -rhs.m_Numerator; temp.m_Denominator = rhs.m_Denominator; return temp; } m_Numerator: 9 m_Denominator: 64 f in main m_Numerator: 9 m_Denominator: 32 g in main
4
http://cs.mst.edu Code Trace // main.cpp... g = -f;... // fraction.h... class Fraction { friend Fraction operator-(const Fraction & rhs);... // fraction.cpp Fraction operator-(const Fraction & rhs) { Fraction temp; temp.m_Numerator = -rhs.m_Numerator; temp.m_Denominator = rhs.m_Denominator; return temp; } m_Numerator: 9 m_Denominator: 64 f in main rhs in operator- m_Numerator: 9 m_Denominator: 32 g in main *this in operator-
5
http://cs.mst.edu Code Trace // main.cpp... g = -f;... // fraction.h... class Fraction { friend Fraction operator-(const Fraction & rhs);... // fraction.cpp Fraction operator-(const Fraction & rhs) { Fraction temp; temp.m_Numerator = -rhs.m_Numerator; temp.m_Denominator = rhs.m_Denominator; return temp; } m_Numerator: 9 m_Denominator: 64 f in main rhs in operator- m_Numerator: 9 m_Denominator: 32 g in main *this in operator- m_Numerator: ? m_Denominator: ? temp
6
http://cs.mst.edu Code Trace // main.cpp... g = -f;... // fraction.h... class Fraction { friend Fraction operator-(const Fraction & rhs);... // fraction.cpp Fraction operator-(const Fraction & rhs) { Fraction temp; temp.m_Numerator = -rhs.m_Numerator; temp.m_Denominator = rhs.m_Denominator; return temp; } m_Numerator: 9 m_Denominator: 64 f in main rhs in operator- m_Numerator: 9 m_Denominator: 32 g in main *this in operator- m_Numerator: -9 m_Denominator: ? temp
7
http://cs.mst.edu Code Trace // main.cpp... g = -f;... // fraction.h... class Fraction { friend Fraction operator-(const Fraction & rhs);... // fraction.cpp Fraction operator-(const Fraction & rhs) { Fraction temp; temp.m_Numerator = -rhs.m_Numerator; temp.m_Denominator = rhs.m_Denominator; return temp; } m_Numerator: 9 m_Denominator: 64 f in main rhs in operator- m_Numerator: 9 m_Denominator: 32 g in main *this in operator- m_Numerator: -9 m_Denominator: 64 temp
8
http://cs.mst.edu Code Trace // main.cpp... g = -f;... // fraction.h... class Fraction { friend Fraction operator-(const Fraction & rhs);... // fraction.cpp Fraction operator-(const Fraction & rhs) { Fraction temp; temp.m_Numerator = -rhs.m_Numerator; temp.m_Denominator = rhs.m_Denominator; return temp; } m_Numerator: 9 m_Denominator: 64 f in main rhs in operator- m_Numerator: 9 m_Denominator: 32 g in main *this in operator- m_Numerator: -9 m_Denominator: 64 temp
9
http://cs.mst.edu Code Trace // main.cpp... g = -f;... // fraction.h... class Fraction { friend Fraction operator-(const Fraction & rhs);... // fraction.cpp Fraction operator-(const Fraction & rhs) { Fraction temp; temp.m_Numerator = -rhs.m_Numerator; temp.m_Denominator = rhs.m_Denominator; return temp; } m_Numerator: 9 m_Denominator: 64 f in main rhs in operator- m_Numerator: -9 m_Denominator: 64 g in main *this in operator- m_Numerator: -9 m_Denominator: 64 temp
10
http://cs.mst.edu Not Operator
11
http://cs.mst.edu Code Trace // main.cpp... !f;... // fraction.h... class Fraction { void operator!();... // fraction.cpp void Fraction::operator ! () { int temp = m_Numerator; m_Numerator = m_Denominator; m_Denominator = temp; return; }
12
http://cs.mst.edu Code Trace // main.cpp... !f;... // fraction.h... class Fraction { void operator!();... // fraction.cpp void Fraction::operator ! () { int temp = m_Numerator; m_Numerator = m_Denominator; m_Denominator = temp; return; } m_Numerator: 9 m_Denominator: 64 f in main
13
http://cs.mst.edu Code Trace // main.cpp... !f;... // fraction.h... class Fraction { void operator!();... // fraction.cpp void Fraction::operator ! () { int temp = m_Numerator; m_Numerator = m_Denominator; m_Denominator = temp; return; } m_Numerator: 9 m_Denominator: 64 f in main *this in operator!
14
http://cs.mst.edu Code Trace // main.cpp... !f;... // fraction.h... class Fraction { void operator!();... // fraction.cpp void Fraction::operator ! () { int temp = m_Numerator; m_Numerator = m_Denominator; m_Denominator = temp; return; } m_Numerator: 9 m_Denominator: 64 f in main *this in operator! 9 temp
15
http://cs.mst.edu Code Trace // main.cpp... !f;... // fraction.h... class Fraction { void operator!();... // fraction.cpp void Fraction::operator ! () { int temp = m_Numerator; m_Numerator = m_Denominator; m_Denominator = temp; return; } m_Numerator: 64 m_Denominator: 64 f in main *this in operator! 9 temp
16
http://cs.mst.edu Code Trace // main.cpp... !f;... // fraction.h... class Fraction { void operator!();... // fraction.cpp void Fraction::operator ! () { int temp = m_Numerator; m_Numerator = m_Denominator; m_Denominator = temp; return; } m_Numerator: 64 m_Denominator: 9 f in main *this in operator! 9 temp
17
http://cs.mst.edu Code Trace // main.cpp... !f;... // fraction.h... class Fraction { void operator!();... // fraction.cpp void Fraction::operator ! () { int temp = m_Numerator; m_Numerator = m_Denominator; m_Denominator = temp; return; } m_Numerator: 64 m_Denominator: 9 f in main *this in operator! 9 temp
18
http://cs.mst.edu End of Session
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.