构造函数的问题???
在这个求圆环跑道造价的问题中,构造函数的初始化数据成员让我迷惑不已
其中的 :radius(r){} 是什么意思??
#include<iostream.h>
const float PI=(float)3.14; //给出派的值
const float fenceprice=35.; //栅栏的单价
const float concreteprice=20.; //过道水泥单价
class circle //定义类circle及其数据和方法
{
private:
float radius;
public:
circle(float r); //构造函数
float circumference(); //计算圆周长
float area(); //计算圆面积
};
//类的实现
circle::circle(float r):radius(r){} //构造函数初始化数据成员radius
float circle::circumference()
return 2*PI*radius;
}
float circle::area() //计算圆面积
{
return PI*radius*radius;
}
//主函数实现
void main()
{
float radius;
float fencecost,concretecost;
cout<<"\n Enter the radius of the pool:"; //提示用户输入半径
cin>>radius;
circle pool(radius); //定义circle对象
circle poolrim(radius+3);
//计算栅栏造价并输出
fencecost=poolrim.circumference()*fenceprice;
cout<<"\n Fencing cost is $ "<<fencecost;
//计算过道价格并输出
concretecost=(poolrim.area()-pool.area())*concreteprice;
cout<<"\n concrete cost is $ "<<concretecost;
}