c ++ 编写一个汽车类, 包含车辆的宽度、长度、高度、重量信息,可以设 定车辆的速度(包括速度的大小和方向, 为了编写方便, 假定只有前后 左右四个方向, 每次改变方向只能左转或者右转).
c ++ 编写一个汽车类, 包含车辆的宽度、长度、高度、重量信息,可以设 定车辆的速度(包括速度的大小和方向, 为了编写方便, 假定只有前后 左右四个方向, 每次改变方向只能左转或者右转).
- 写回答
- 好问题 0 提建议
- 关注问题
- 邀请回答
-
2条回答 默认 最新
CSDN专家-link 2022-04-10 16:56关注前后左右可以定义为枚举类型。重点就是改变方向函数么......
#include <iostream> using namespace std; typedef enum _movedir { move_q = 0, //前 move_r = 1, //右 move_h = 2, //后 move_l = 3 //左 }movedir; class car { private: movedir md; float speed; float width; float length; float height; float weight; public: car() {} car(float s,movedir m,float w,float l,float h,float t) { speed = s; md = m; width = w; length =l; height = h; weight = t; } void turnright() { int d = (md+1)%4; md = (movedir)d; } void turnleft() { int d = (md+3)%4; md = (movedir)d; } void print() { cout<<"车宽:"<<width<<endl; cout<<"车长:"<<length<<endl; cout<<"车高:"<<height<<endl; cout<<"车重:"<<height<<endl; cout<<"速度:"<<speed<<endl; cout<<"方向:" ; switch(md) { case move_q: cout<<"向前"; break; case move_r: cout<<"向右"; break; case move_h: cout<<"向后"; break; case move_l: cout<<"向左"; break; } cout<<endl; } }; int main() { car c(50,move_q,1.9,4.8,1.2,1000); c.turnright(); c.turnright(); c.turnleft(); c.print(); return 0; }本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏 举报 编辑记录