C++小实验--组装电脑

这篇博客通过C++编程实现了一个模拟组装电脑的实践项目,包括定义HardWare类、CPU、MainBord、HardDisk类,以及PC、生产厂家和客户类,并在main函数中进行操作。博主旨在将理论知识应用到实践中,提升编程技能。
摘要由CSDN通过智能技术生成

学了这么久的C++,一直做题,难道不来点实际的搞搞?
( •̀ ω •́ )✧,现在一个万众瞩目的任务来了:
学计算机的不会修电脑,那就组装电脑试试:ヾ(≧▽≦*)o
(ps:画电脑充饥)

任务要求:
	自己去买CPU(中央处理器),HardDisk(硬盘),MainBoard(主板)
	客户是不用找的,一辈子都不会去找的。(因为我们已经准备好了DELL和IBM[]~( ̄▽ ̄)~*)
	言归正传,具体要求如下:o(* ̄︶ ̄*)o
	
	硬件方面:
		设计一个HardWare类,包含hardware的品牌名字(弄一个getbrand()),并由HardWare类派生出CPU,HardDisk,MainBoard类。
		下面的每一个硬件都要弄几个个getinfo(),work(检验是否正常工作)这种的函数。
		其中CPU类+一个frequency数据,MainBoard+type版型,HardDisk+store储量
		最后由三种硬件组装成PC。
		
	他来了,他来了,他带着需求走来了……(~ ̄▽ ̄)~
	
	生产厂家类
		电脑生产一条龙,可以生产所有的硬件和组装(具体看下面的例子)
		由这个类派生出DELL和IBM

	我就是从这里跳下去,也不给你们定制电脑((〃 ̄︶ ̄)人( ̄︶ ̄〃)真香)
	
	客户类(具体看下面的例子)

sample input and ouput

Intel 4.5
Seagate 500
ASUS ATX
AMD 3.8
Sumsang 1000
ASUS MINI-ITX

sample ouput

Building Dell Computer
Intel CPU Work with 4.5GHz
Seagate HardDisk Work with 500G
ASUS MainBoard Work with ATX
PC Work
Building IBM Computer
AMD CPU Work with 3.8GHz
Sumsang HardDisk Work with 1000G
ASUS MainBoard Work with MINI-ITX
PC Work

下面是我自己写的一个(~ ̄▽ ̄)~
HardWare类

class HardWare{
   
    private:
        string brand = "";

    public:
        HardWare(string bra = "") : brand(bra) {
   }
        virtual ~HardWare() {
   }
        virtual void Set(HardWare *obj);

        //除非是纯基类,否则虚函数需要定义
        virtual void work() {
   }
        string getBrand() {
    return brand; }
};

void HardWare::Set(HardWare *obj){
   
    brand = obj->brand;
}

CPU,MainBord,HardDisk类

class CPU : public HardWare{
   
    private:
        double frequency = 0.0;

    public:
        CPU(string b = "", double f = 0.0) : HardWare(b), frequency(f) {
   }
        virtual ~CPU() {
   }
        virtual void Set(CPU *obj);

        void work();
        double getFrequency() {
    return frequency; }
};

void CPU::Set(CPU *obj){
   
    frequency = obj->frequency;
    HardWare::Set(obj);
}

void CPU::work(){
   
    cout << getBrand() << " CPU Work with " << frequency << "GHz\n";
}

class MainBoard
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值