Overloaded operator

#include <iostream>
using namespace std;

class Circle {
public:
  double radius;
  Circle (double);
  Circle ();
  Circle operator + (Circle); 
  double area (void) {return (3.141593*radius*radius);}
};

Circle::Circle( double r)
{
  radius = r; 
  return; 
}
Circle::Circle()
{
  radius = 5; 
  return; 
}
Circle Circle::operator+( Circle a)
{
  Circle temp; 
  temp.radius = radius + a.radius; 
  return temp; 
}
int main () {
  Circle crcla(3);
  Circle crclb(4);
  Circle crclc;

  crclc = crcla + crclb; 
   
  cout << "crclc radius " << crclc.radius << " area " << crclc.area() << endl;
  return 0;
}