Mega Code Archive

 
Categories / C++ / Overload
 

Define operator +(plus) and cast to double operator

#include <iostream> using namespace std; class Power {    double b;    int e;    double val;  public:    Power(double base, int exp);    Power operator+(Power obj) {       double base;       int exp;        base = b + obj.b;       exp = e + obj.e;       Power temp(base, exp);       return temp;    }    operator double(void) {return val;}      }; Power::Power(double base, int exp){    b = base;    e = exp;    val = 1;    if (exp!=0)       while(exp-- > 0)          val *= b; } int main(void){    Power pwr1(4.0, 2);    double doub1;    doub1 = pwr1;                    cout << (doub1 + 100.2) << endl;    Power pwr2(3.3, 3), pwr3(0,0);    pwr3 = pwr1 + pwr2;              doub1 = pwr3;                    cout << doub1; }