看课后题,是不是参考答案这么些不好,int* itsRadius是野指针,是不是指针一定要指向一个变量呢??
原题:
6_8 实现一名为SimpleCircle的简单圆类。其数据成员int*itsRadius为一个指向其半径的指针,存放其半径值。设计对数据成员的各种操作
,给出这个类的完整实现并测试这个类。
答:
#i nclude "iostream.h"
const double Pi=3.1415926;
class SimpleCircle
{
private:
int* itsRadius;
public:
SimpleCircle();
~SimpleCircle();
public:
double Area();
void SetRadius(int nRadius);
double GetRadius();
};
SimpleCircle::SimpleCircle()
{
itsRadius=new int(5);
}
SimpleCircle::~SimpleCircle()
{
delete itsRadius;
}
void SimpleCircle::SetRadius(int nRadius)
{
*itsRadius=nRadius;
}
double SimpleCircle::Area()
{
return Pi**itsRadius**itsRadius;
}
int main()
{
SimpleCircle Circle1;
Circle1.SetRadius(8);
double dArea=Circle1.Area();
cout<<dArea<<endl;
return 0;
}
//////我认为在main函数中 int radius(8);
Circle1.SetRadius(&radius);
这样是不是就安全了!!
6_8 实现一名为SimpleCircle的简单圆类。其数据成员int*itsRadius为一个指向其半径的指针,存放其半径值。设计对数据成员的各种操作
,给出这个类的完整实现并测试这个类。
答:
#i nclude "iostream.h"
const double Pi=3.1415926;
class SimpleCircle
{
private:
int* itsRadius;
public:
SimpleCircle();
~SimpleCircle();
public:
double Area();
void SetRadius(int nRadius);
double GetRadius();
};
SimpleCircle::SimpleCircle()
{
itsRadius=new int(5);
}
SimpleCircle::~SimpleCircle()
{
delete itsRadius;
}
void SimpleCircle::SetRadius(int nRadius)
{
*itsRadius=nRadius;
}
double SimpleCircle::Area()
{
return Pi**itsRadius**itsRadius;
}
int main()
{
SimpleCircle Circle1;
Circle1.SetRadius(8);
double dArea=Circle1.Area();
cout<<dArea<<endl;
return 0;
}
//////我认为在main函数中 int radius(8);
Circle1.SetRadius(&radius);
这样是不是就安全了!!
...全文
相关推荐
塑件棒类供料设备pro5.0全套技术资料100%好用.zip
塑件棒类供料设备pro5.0全套技术资料100%好用.zip
振动盘供料设备sw2018全套技术资料100%好用.zip
振动盘供料设备sw2018全套技术资料100%好用.zip
自动化手表外壳检测设备pro5.0全套技术资料100%好用.zip
自动化手表外壳检测设备pro5.0全套技术资料100%好用.zip
封箱喷码包装线pro5.0全套技术资料100%好用.zip.zip
封箱喷码包装线pro5.0全套技术资料100%好用.zip.zip
基板供料搬运机sw18可编辑全套技术资料100%好用.zip
基板供料搬运机sw18可编辑全套技术资料100%好用.zip


