السلام عليكم ورحمة الله وبركاته
اتمنى الجميع بخير
عندي سؤال
وهو كيف يمكن لي تعريف أوبجكت داخل كلاس بحيث أن الاوبجكت يكون من كلاس يتواجد بعد الكلاس المعرف ؟
على سبيل المثال
#include<iostream>
#include<cmath>
#include<conio.h>
using namespace std;
const int PI=3.14159265;
class Polar
{
double radius;
double angle;
public:
Polar(double r=0,double an=0):radius(r),angle(an){}
Polar(Rectangular R2) //Rectangular is defined after this class
{
radius=sqrt(pow(R2.getX(),2.0)+pow(R2.getY(),2.0));
angle=atan(R2.getY()/R2.getX());
}
void setRadius(double r)
{
radius=r;
}
double getRadius()
{
return radius;
}
void setAngle(double an)
{
angle=an;
}
double getAngle()
{
return angle;
}
Polar operator + (Polar p1)
{
return Polar((Rectangular(Polar(radius,angle))+Rectangular(p1)));
}
void display()
{
cout<<'('<<radius<<' , '<<angle<<')'<<endl;
}
};
class Rectangular
{
double x;
double y;
public:
Rectangular(double X_axis=0,double Y_axis=0):x(X_axis),y(Y_axis){}
Rectangular(Polar p1)
{
x=p1.getRadius()*cos(p1.getAngle()*PI/180);
y=p1.getRadius()*sin(p1.getAngle()*PI/180);
}
Rectangular operator + (Rectangular R1)
{
return Rectangular(x+R1.x,y+R1.y);
}
double getX()
{
return x;
}
double getY()
{
return y;
}
};
int main()
{
Polar p1(4,45),p2(5,30);
Polar result;
result=p1+p2;
result.display();
system("pause");
return 0;
}