c++ 输出结果不管r不r变不变 都是一个固定的

img

img


大概就是这样 不管r变不变 这个输出结果一直是这个 程序运行也没有错 不知道哪里出问题了 求解答

根本的原因是: circle的数据乘员r没有被赋值,赋值的是radius。
调用circle(r)时,将传入的r赋值给radius。此时,radius有值,而circle的数据成员r没有值。
在计算面积或周长时,用的是r,而不是radius。

修改:
把计算面积或周长的函数中的r改为radius,就可以了。

你定义了两个成员变量,构造函数给radius赋值,但函数里都用r,可你没给r赋值啊!!!
删除radius成员变量,构造函数中改为this->r = r;