C++问题,高手进,感激不尽!!!

编写程序,定义一个类square(正方形),其成员数据及函数要求如下:
① 私有数据成员 float radius(代表边长)
② 构造函数 square (float d=0)当参数缺省时将数据成员radius的值设置为0,否则设置为参数d的值
③ 成员函数float perimeter(float d)计算出周长。(注:正方形的周长为: l=4*r)
class square
{
public:
square( float d = 0){radius = d;}
float perimeter(float d)
{
return 4 * d;
}

private:
float radius;
};

问题:“return 4*d”不是在私有成员后定义后才写的吗?程序正确吗?(一定用c++写)

这里的return 4 * d相当与perimeter=4 * d没有异义的.
但我觉得这样不清晰.
class square
{
public:
square( float d = 0){radius = d;}
float perimeter(float d)
{
return 4 * d;
}

private:
float radiu;
float sperimeter;
}
float perimeter(float d)
{
perimeter=4 * d;
}
温馨提示:答案为网友推荐,仅供参考
第1个回答  2009-01-01
应该是对的,d是外面带入的参数,与私有成员变量无关,而且即使是4*radius也是对的,在一个类中的成员声明没有先后顺序
第2个回答  2009-01-01
没问题,
C++语言的一大特点就是封装,内部公有,私有,保护部分顺序,省略默认为私有!
这只是语法规定,没别的含义!
相似回答