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 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111
|
#include <iostream>
#include <string>
using namespace std;
//Class Homework
class Homework{
//...Member function for class Homework...
//Private data for class Homework
private:
//Local and private variable
string className;
string assignment;
int numOfminutes;
//Public data for class Homework
public:
Homework();//Constructor
void setClassName( string );//Mutator for set class name
string getClassName();//Accessor to get class name
void setAssignment( string );//Mutator for set assignment
string getAssignment();//accessor to get assignment
void set_numOfminutes( int );
int get_numOfminutes( );
Homework operator+(Homework);//overloading operator + to add the minutes required by multiple Homework object
};
//Template function that return sum of the two parameters
template< class T >
T AddTwoValues(T value1 , T value2 ){
return value1 + value2;
}
//Overloading operator+
Homework Homework :: operator+ (Homework hw){
Homework hw_result = *this;
hw_result.numOfminutes += hw.numOfminutes;
return hw_result;
}
//Constructor
//Initialize the variable for string & int
Homework :: Homework(){
className = "";
assignment = "";
numOfminutes = 0;
}
//Mutator
void Homework :: setClassName( string theClassName ){
className = theClassName;
numOfminutes = 0;
}
//Accessor
string Homework :: getClassName(){
return className;
}
//Mutator
void Homework :: setAssignment( string theAssignment ){
assignment = theAssignment;
}
//Accesor
string Homework :: getAssignment(){
return assignment;
}
void Homework :: set_numOfminutes( int theminutes ){
numOfminutes = theminutes;
}
int Homework :: get_numOfminutes(){
return numOfminutes;
}
int main(){
//Set multiple Homework object
Homework thehomework1 , thehomework2;
thehomework1.setClassName( "PSDC Batch 18 CE");
thehomework1.setAssignment( "Read Chapter 11" );
thehomework1.set_numOfminutes( 150 );
thehomework2.setClassName( "Inti Batch 1 CS" );
thehomework2.setAssignment( "Read Chapter 22" );
thehomework2.set_numOfminutes( 280 );
Homework homework3 = thehomework1 + thehomework2;
cout << "Name for first class : " << thehomework1.getClassName() << endl
<< "Assignment title : " << thehomework1.getAssignment() << endl << endl
<< "Number of minutes that will take to complete assignment : " << thehomework1.get_numOfminutes() << endl << endl
<< "Name for second class : " << thehomework2.getClassName() << endl
<< "Assignment title : " << thehomework2.getAssignment() << endl << endl
<< "Number of minutes that will take to complete assignment : " << thehomework2.get_numOfminutes() << endl << endl ;
cout << "Summary of time for the assignments that required [integer] : "
<< AddTwoValues( 30 , 40 )//with integer arguments & Homework obj
<< "minutes" << endl;
cout << "Summary of time for the assignments that required [double] : "
<< AddTwoValues( 30.28 , 49.18 )//with double arguments & Homework obj
<< "minutes" << endl;
//cout << "The result of addition : " << homework3 << endl;
system( "pause" );//Pause window
return 0;//Terminate the program
}
|