overloaded '<' operator compares two Distances : Compare « Overload « C++






overloaded '<' operator compares two Distances

  
#include <iostream>
using namespace std;

class Distance
   {
   private:
      int feet;
      float inches;
   public:
      Distance() : feet(0), inches(0.0){ }
      Distance(int ft, float in) : feet(ft), inches(in) {  }
      void getdist(){
         cout << "\nEnter feet: ";  cin >> feet;
         cout << "Enter inches: ";  cin >> inches;
      }
      void showdist() const{ 
         cout << feet << "\'-" << inches << '\"'; 
      }
      bool operator < (Distance) const;  
};

bool Distance::operator < (Distance d2) const{
   float bf1 = feet + inches/12;
   float bf2 = d2.feet + d2.inches/12;
   return (bf1 < bf2) ? true : false;
}
int main(){
   Distance dist1;                 
   dist1.getdist();                

   Distance dist2(6, 2.5);         
   cout << "\ndist1 = ";  dist1.showdist();
   cout << "\ndist2 = ";  dist2.showdist();

   if( dist1 < dist2 )             
      cout << "\ndist1 is less than dist2";
   else
      cout << "\ndist1 is greater than (or equal to) dist2";
   cout << endl;
   return 0;
}
  
    
  








Related examples in the same category

1. Overload the < and > Overload the  < and  	>
2.Overload +, =, <, >, ==Overload +, =, <, >, ==
3.Define < operator in order to use the sort method
4.Overloading Equality and Inequality Operators
5.overloaded '==' operator compares strings