面试题答案
一键面试-
提升代码可读性的方面:
- 职责清晰:声明部分主要定义类的接口,也就是对外提供的功能,让使用者能快速了解类能做什么。实现部分专注于具体功能的代码实现,这种分离使代码结构更清晰,不同职责一目了然。例如在一个图形绘制类中,声明中定义了
draw()
等绘图接口函数,使用者无需关心绘制细节,而实现部分则具体实现这些绘图逻辑。 - 便于浏览:当代码量较大时,阅读声明部分就可掌握类的整体功能,而无需在冗长的实现代码中查找关键信息。如果需要深入了解某个功能的实现,再去查看实现文件。就像阅读一个复杂游戏开发中的角色类,先看声明知道角色有移动、攻击等功能,再看实现了解具体移动和攻击的算法。
- 维护性增强:如果需要修改类的实现细节,不会影响到使用该类的其他代码,因为声明不变,其他代码调用接口的方式不变。比如修改一个文件读取类的具体读取算法,只要声明的接口
readFile()
等不变,其他调用该类读取文件的代码无需修改。
- 职责清晰:声明部分主要定义类的接口,也就是对外提供的功能,让使用者能快速了解类能做什么。实现部分专注于具体功能的代码实现,这种分离使代码结构更清晰,不同职责一目了然。例如在一个图形绘制类中,声明中定义了
-
类示例:
- 类的声明(假设在
MyClass.h
文件中):
- 类的声明(假设在
// MyClass.h
#ifndef MYCLASS_H
#define MYCLASS_H
class MyClass {
public:
MyClass(int value);
int getValue();
void setValue(int newVal);
private:
int data;
};
#endif
- 类的实现(假设在
MyClass.cpp
文件中):
// MyClass.cpp
#include "MyClass.h"
MyClass::MyClass(int value) {
data = value;
}
int MyClass::getValue() {
return data;
}
void MyClass::setValue(int newVal) {
data = newVal;
}