创建以下文件:
constants.h
- 用于定义常量。MyClass.h
- 用于声明类。MyClass.cpp
- 用于实现类的方法。main.cpp
- 包含主函数。
1. constants.h
#ifndef CONSTANTS_H
#define CONSTANTS_H// 定义一个常量
const int MY_CONSTANT = 100;#endif // CONSTANTS_H
2. MyClass.h
#ifndef MYCLASS_H
#define MYCLASS_Hclass MyClass {
public:MyClass(); // 构造函数void display() const; // 公共成员函数,显示常量void setValue(int value); // 设置一个值int getValue() const; // 获取当前值private:int m_value; // 私有成员变量
};#endif // MYCLASS_H
3. MyClass.cpp
#include <iostream>
#include "MyClass.h"
#include "constants.h"// 构造函数
MyClass::MyClass() : m_value(0) {}// 公共成员函数,显示常量
void MyClass::display() const {std::cout << "The value of MY_CONSTANT is: " << MY_CONSTANT << std::endl;
}// 设置一个值
void MyClass::setValue(int value) {m_value = value;
}// 获取当前值
int MyClass::getValue() const {return m_value;
}
4. main.cpp
#include <iostream>
#include "MyClass.h" // 引入类的声明
#include "constants.h" // 引入常量定义int main() {std::cout << "The value of MY_CONSTANT is: " << MY_CONSTANT << std::endl; // 直接输出头文件常量MyClass myObject; // 创建 MyClass 的实例myObject.display(); // 调用 display 方法,输出常量的值myObject.setValue(42); // 设置 m_value 的值std::cout << "Current value is: " << myObject.getValue() << std::endl; // 获取并输出当前值return 0;
}
运行结果
运行程序时,输出将类似于:
The value of MY_CONSTANT is: 100
The value of MY_CONSTANT is: 100
Current value is: 42
这个示例展示了如何将类的声明和实现分开,并且在不同的文件中使用常量和类的方法。