文章目录
前言
对mit/rca目录下energy.h与energy.cc文件实现的功能做一个简单记录,以防之后使用
一、energy.h
头文件提供类的声明,使得类和其成员函数在其他文件中可见.
#ifndef energy_resource_h
#define energy_resource_h
#include <mit/rca/resource.h>
class EnergyResource ;
class EnergyResource : public Resource {
private:
int command(int argc, const char*const* argv);
char *resulttostring(int result);
double energy_level_;
double alarm_level_;
double expended_;
public:
EnergyResource();
void add(double amount);
int remove(double amount);
int acquire(double amount);
double query() {
return energy_level_;}
};
#endif
上述代码定义了 EnergyResource 类,并声明它继承自 Resource 类。
定义私有成员:
- command(int argc, const charconst argv):处理命令的成员函数。
- resulttostring(int result):将结果转换为字符串的成员函数。
- energy_level_:当前能量水平。
- alarm_level_:报警能量水平。
- expended_:已消耗的能量。
定义共有成员:
- EnergyResource():构造函数,用于初始化类的实例。
- void add(double amount):增加指定数量的能量。
- int remove(double amount):移除指定数量的能量,并返回操作结果。
- int acquire(double amount):获取指定数量的能量,并返回操作结果。
- double query():查询当前的能量水平,返回 energy_level_。
二、energy.cc
对上述定义函数的具体实现。
#include <stdio.h>
#