实现代码如下:
const float PI=3.1415;
class SimpleCircle
{
private:
int *itsRadius;
public:
SimpleCircle(int Radius=0)
{
if(Radius<=0)
*itsRadius=0;
else
*itsRadius=Radius;
}
float getPerimeter() //获得周长
{
return 2*PI*(*itsRadius);
}
float getArea()
{
return PI*(*itsRadius)*(*itsRadius);
}
int getRadius()
{
return *itsRadius;
}
void setRadius(int Radius)
{
*itsRadius=Radius;
}
}
注意事项
int的取值范围为: -2^31——2^31-1,即-2147483648——2147483647
1、对于正数来说,它的补码就是它本身。
2、对于负数来说,它的补码是它对应的正数的二进数所有位取反之后加一。
3、由负数的补码求原码也是相同的操作(所有位取反+1)即为该负数的绝对值
int是4个字节,32位,
10000000 00000000 00000000 00000000 是补码,第一位为符号位,1表示负数,所以
对剩下的位取反,结果为 1111111 11111111 11111111 11111111,加一后为10000000 00000000 00000000 00000000
4、所以原码指的是-2^31=-2147483648
int的取值范围为-2^31——2^31-1