1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
| class Cents { private : int m_nCents; public : Cents( int nCents) { m_nCents = nCents; } // Overload -cCents friend Cents operator-( const Cents &cCents); }; // note: this function is not a member function! Cents operator-( const Cents &cCents) { return Cents(-cCents.m_nCents); } |
1
2
| if (!nX) // do something |
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
| class Point { private : double m_dX, m_dY, m_dZ; public : Point( double dX=0.0, double dY=0.0, double dZ=0.0) { m_dX = dX; m_dY = dY; m_dZ = dZ; } // Convert a Point into it's negative equivalent friend Point operator- ( const Point &cPoint); // Return true if the point is set at the origin friend bool operator! ( const Point &cPoint); double GetX() { return m_dX; } double GetY() { return m_dY; } double GetZ() { return m_dZ; } }; // Convert a Point into it's negative equivalent Point operator- ( const Point &cPoint) { return Point(-cPoint.m_dX, -cPoint.m_dY, -cPoint.m_dZ); } // Return true if the point is set at the origin bool operator! ( const Point &cPoint) { return (cPoint.m_dX == 0.0 && cPoint.m_dY == 0.0 && cPoint.m_dZ == 0.0); } |
1
2
3
4
5
6
| Point cPoint; // use default contructor to set to (0.0, 0.0, 0.0) if (!cPoint) cout << "cPoint was set at the origin." << endl; else cout << "cPoint was not set at the origin." << endl; |
0 comments: