项目训练3

简介: 项目训练3

题目:定义一个或多个类,来描述以下需求:

汽车,有多个轮胎,一个发动机,品牌,型号,价格,行驶里程。

轮胎,有品牌,尺寸,气压。

发动机,有品牌,型号。


Car.h

#pragma once
#include "Tire.h"
#include "Engine.h"
#include <sstream>
#include <iostream>
class Car
{
public:
  Car(const string &carBrand,const string &carVer,int carPrice,const string &engineBrand,float engineVer,const string &tireBrand="米其林");
  ~Car();
  Engine getEngin() const;
  const Tire* getTire(int i)const;
  string getBrand() const;
  string getVersion() const;
  int getPrice() const;
  int getMiles() const;
  string description() const;
private:
  Engine engine;
  Tire tires[4];
  string brand;//版本
  string version;//型号
  int price;
  int miles;//行驶里程数
};

Car.cpp

#include "Car.h"
Car::~Car()
{
  cout << "_FUNCITON_" << endl;
}
Car::Car(const string& carBrand, const string& carVer, int carPrice, 
  const string& engineBrand,float engineVer, 
  const string& tireBrand)
  :engine(engineBrand,engineVer),
  tires{tireBrand,tireBrand,tireBrand,tireBrand}
{
  this->brand = carBrand;
  this->price = carPrice;
  this->version = carVer;
  this->miles = 0;
}
Engine Car::getEngin() const
{
  return engine;
}
const Tire* Car::getTire(int i) const
{
  if (i >= 1 && i <= 4)
  {
    return &tires[i];
  }
  return NULL;
}
string Car::getBrand() const
{
  return brand;
}
string Car::getVersion() const
{
  return version;
}
int Car::getPrice() const
{
  return price;
}
int Car::getMiles() const
{
  return miles;
}
string Car::description() const
{
  stringstream ret;
  ret << "汽车品牌:" << brand << "-" << version << "-$" << price
    << "/t/t引擎:" << engine.description()
    << "\t\t轮胎:" << tires[0].description();
  return ret.str();
}

Engine.h

#pragma once
#include <string>
#include <iostream>
using namespace std;
class Engine
{
public:
  Engine(const string& brand, float version);
  ~Engine();
  string description() const;
private:
  string brand;//发动机品牌
  float version;//发动机型号:x.x升
};

Engine.cpp

#include "Engine.h"
#include <sstream>
Engine::Engine(const string& brand, float version)
{
  this->brand = brand;
  this->version = version;
}
Engine::~Engine()
{
  cout << "_FUNCITON_" << endl;
}
string Engine::description() const
{
  stringstream ret;
  ret << "品牌:" << brand << ",型号:" << version;
  return ret.str();
}

Tire.h

#pragma once
#include <string>
#include <iostream>
using namespace std;
class Tire
{
public:
  Tire(const string& brand="米其林");
  ~Tire();
  string getBrand() const;
  float getPressure() const;
  string description() const;
private:
  string brand;//品牌
  float pressure;//胎压
};

Tire.cpp

#include "Tire.h"
#include <sstream>
Tire::Tire(const string& brand)
{
  this->brand = brand;
  this->pressure = 2.5;
}
Tire::~Tire()
{
  cout << "_FUNCITON_" << endl;
}
string Tire::getBrand() const
{
  return brand;
}
float Tire::getPressure() const
{
  return pressure;
}
string Tire::description() const
{
  stringstream ret;
  ret << "品牌:" << brand << "胎压:" << pressure;
  return ret.str();
}

main.cpp

#include <iostream>
#include "Car.h"
int main(void)
{
  {
    Car car("宝马", "x7", 950000, "宝马", 3.5);
    cout << car.description() << endl;
  };
  system("pause");
  return 0;
}


相关文章
|
人工智能 安全 算法
基于Aidlux平台实现真章假章相似度对比训练推理测试
在互联网内容安全风控领域,AI技术的应用对于提高管理的自动化程度和准确性具有重要意义。
157 0
|
7月前
|
IDE 数据处理 开发工具
垃圾分类模型训练部署教程,基于MaixHub和MaixPy-k210(1)
我的准备 Maix duino开发板一块(含摄像头配件) Type-c数据集一根
313 0
|
7月前
|
机器学习/深度学习 Python
垃圾分类模型训练部署教程,基于MaixHub和MaixPy-k210(2)
至此,我们就已经成功上传了其中一个类别的图片啦!按照上面的方式,我们可以继续上传其余每个类别的图片。 上传完所有类别的图片后,来到总览,可以大致浏览我们刚刚上传的图片。 接下来,就要用这些图片来训练用于垃圾分类的模型了!
334 0
|
7月前
|
IDE 开发工具
垃圾分类模型训练部署教程,基于MaixHub和MaixPy-k210(3)
在开发板上运行模型 1、烧录模型文件到板子 使用kflash_gui工具,可以完成这个任务。
411 0
|
存储 机器学习/深度学习 算法
MMDetection3d对KITT数据集的训练与评估介绍
MMDetection3d对KITT数据集的训练与评估介绍
2025 0
MMDetection3d对KITT数据集的训练与评估介绍
|
28天前
|
人工智能 边缘计算 JSON
DistilQwen2 蒸馏小模型在 PAI-QuickStart 的训练、评测、压缩及部署实践
本文详细介绍在 PAI 平台使用 DistilQwen2 蒸馏小模型的全链路最佳实践。
|
4月前
|
数据采集 人工智能 小程序
如何制作数据集并基于yolov5训练成模型并部署
这篇文章介绍了如何为YOLOv5制作数据集、训练模型、进行模型部署的整个流程,包括搜集和标注图片、创建数据集文件夹结构、编写配置文件、训练和评估模型,以及将训练好的模型部署到不同平台如ROS机器人、微信小程序和移动应用等。
如何制作数据集并基于yolov5训练成模型并部署
|
4月前
|
SQL 自然语言处理 知识图谱
评估数据集CGoDial问题之TKK框架在知识获取阶段进行训练的问题如何解决
评估数据集CGoDial问题之TKK框架在知识获取阶段进行训练的问题如何解决
|
7月前
|
机器学习/深度学习 编解码 PyTorch
训练Sora模型,你可能需要这些(开源代码,模型,数据集及算力评估)
在之前的文章《复刻Sora有多难?一张图带你读懂Sora的技术路径》,《一文看Sora技术推演》我们总结了Sora模型上用到的一些核心技术和论文,今天这篇文章我们将整理和总结现有的一些开源代码、模型、数据集,以及初步训练的算力评估,希望可以帮助到国内的创业公司和个人开发者展开更深的研究。
|
5月前
|
机器学习/深度学习 数据采集 PyTorch
PyTorch模型训练与部署流程详解
【7月更文挑战第14天】PyTorch以其灵活性和易用性在模型训练与部署中展现出强大的优势。通过遵循上述流程,我们可以有效地完成模型的构建、训练和部署工作,并将深度学习技术应用于各种实际场景中。随着技术的不断进步和应用的深入,我们相信PyTorch将在未来的机器学习和深度学习领域发挥更加重要的作用。