315、为一个名为Circle的类声明构造函数和showData()成员函数的实现部分,该类有整数数据成员xcenter和ycenter,以及双精度数据成员radius。
以下是对应的构造函数和 showData() 成员函数的实现部分示例:
#include <iostream>
class Circle {
public:
// 构造函数
Circle(int x = 0, int y = 0, double r = 0.0) : xcenter(x), ycenter(y), radius(r) {}
// 显示数据的成员函数
void showData() {
std::cout << "圆心坐标: (" << xcenter << ", " << ycenter << ")" << std::endl;
std::cout << "半径: " << radius << std::endl;
}
private:
int xcenter;
int ycenter;
double radius;
};
316、找出以下类声明部分的错误:class employee { public: int empnum; char code; private: class(int = 0); void showemp(int, char); };
此声明存在语法错误。 class(int = 0); 不符合 C++ 语法规则,不清楚其意图。若想定义构造函数,应使用类名 employee ;若定义普通函数,需给出有效的返回类型和函数名。正确的构造函数声明类似 employee(int = 0); 。
317、构建一个名为 Rectangle 的类,该类具有双精度数据成员 length 和 width。该类应具有名为 perimeter() 和 area() 的成员函数,用于计算矩形的周长和面积;名为 setData() 的成员函数,用于设置矩形的长和宽;以及名为 showData() 的成员函数,用于显示矩形的长、宽、周长和面积。
以下是实现该类的 C++ 代码示例:
#include <iostream>
class Rectangle {
private:
double length;
double width;
public:
// 设置矩形的长和宽
void setData(double l, double w) {
length = l;
width = w;
}
// 计算矩形的周长
double perimeter() {
return 2 * (length + width);
}
// 计算矩形的面积
double area() {
return length * width;
}
// 显示矩形的长、宽、周长和面积
void showData() {
std::cout << "Length: " << length << std::endl;
std::cout << "Width: " << width << std::endl;
std::cout << "Perimeter: " << perimeter() << std::endl;
std::cout << "Area: " << area() << std::endl;
}
};
上述代码定义了一个 Rectangle 类,包含 length 和 width 两个双精度数据成员,以及 setData 、 perimeter 、 area 和 showData 四个成员函数,满足题目的要求。
318、为名为IntDate的类编写一个类定义。声明部分应该有一个用单个整数表示日期的数据成员。例如,如果日期以年/月/日的形式存储,像11/23/12这样的日期将存储为20121123。以这种形式存储日期有什么优点?
类定义如下:
// 声明部分
class IntDate {
private:
int date; // 用单个整数表示日期
public:
// 函数原型
}; // 类声明结束
以这种形式存储日期的优点是方便比较日期大小,能快速判断日期先后顺序;在进行日期的加减等运算时,可能更便于编程实现;并且占用的存储空间相对较小。


316

被折叠的 条评论
为什么被折叠?



