您当前的位置: 首页 > 学无止境 > 心得笔记 网站首页心得笔记
第14讲-(下)_闭门造车
发布时间:2021-05-15 15:41:31编辑:雪饮阅读()
上篇了解了面向对象的基本结构以及成员变量等的定义,这里以一个实例具象化方式介绍下成员方法(函数)的声明与定义。这点和c语言有点区别,这里经过个人测试发现是决定不能省略定义函数的语句。
为了更好地理解这些概念,让我们尝试一下下面的实例。
#include <iostream>
#include <string>
#define FULL_GAS 85
class Car
{
public:
std::string color;
std::string engine;
float gas_tank;
unsigned int wheel;
void setColor(std::string col);
void steEngine(std::string eng);
void setWheel(unsigned int whe);
void fillTank(int liter);
int running(void);
void warning(void);
};
void Car::setColor(std::string col)
{
color=col;
}
void Car::steEngine(std::string eng)
{
engine=eng;
}
void Car::setWheel(unsigned int whe)
{
wheel=whe;
}
void Car::fillTank(int liter){
gas_tank+=liter;
}
int Car::running(void)
{
std::cout<<"我正在以的时速往前移动....越过那高山越过那河...\n";
gas_tank--;
std::cout<<"当前还剩"<<100*gas_tank/FULL_GAS<<"%"<<"油量!\n";
return gas_tank;
}
void Car::warning(void)
{
std::cout<<"WARNING!!"<<"还剩"<<100*gas_tank/FULL_GAS<<"%"<<"油量!";
}
int main()
{
char i;
Car mycar,car1;
mycar.setColor("WHITE");
mycar.steEngine("V8");
mycar.setWheel(4);
mycar.gas_tank=FULL_GAS;
while(mycar.running())
{
if(mycar.running()<10){
mycar.warning();
if(mycar.running()<=0){
std::cout<<"油尽灯枯\n";
break;
}
std::cout<<"请问是否需要加满油再行驶?(Y/N)\n";
std::cin>>i;
if('Y'==i||'y'==i){
mycar.fillTank(FULL_GAS);
}
}
}
return 0;
}
然后编译运行效果如:
关键字词:c语言,面向对象