改错题--小鼠标,你要干什吗?

2020年1月17日 888点热度 0人点赞 0条评论

改错题--小鼠标,你要干什吗?

时间: 1ms        内存:128M

描述:

鼠标双击不同的图标产生不同的效果,比如双击文档(document)文件,则打开文档文件;双击图形(graphics)文件,则显示图形;双击视频(video)文件,则播放视频。下面程序是鼠标的双击三种文档、图形和视频类型文件的程序。

注:本题只需要提交修改和完善部分的代码,请按照C++方式提交。

#include <string>
#include <iostream>
using namespace std;
/* 修改和完善该部分代码
class Filetype
{
public:

    void DoubleClick() =0;
    virtual Filetype(string name)
    {
        Filename = name;
    }
    string getFilename()
    {
        return Filename;
    }
    virtual ~Filetype() {}
private:
    string Filename;
};
*/
class Documenttype:public Filetype
{
public:
    void DoubleClick()
    {
        cout<<"Document file :"<< getFilename()<<endl;
    }
    Documenttype(string name):Filetype(name)
    {
    }
};
class Graphicstype:public Filetype
{
public:
    void DoubleClick()
    {
        cout<<"Graphics file :"<< getFilename()<<endl;
    }
    Graphicstype(string name):Filetype(name)
    {
    }
};
class Videotype:public Filetype
{
public:
    void DoubleClick()
    {
        cout<<"Video file :"<< getFilename()<<endl;
    }
    Videotype(string name):Filetype(name)
    {
    }
};
int main()
{
    string name;
    Filetype *ptype;
    cin>>name;
    ptype=new Documenttype(name);
    ptype->DoubleClick();
    delete ptype;
    cin>>name;
    ptype=new Graphicstype(name);
    ptype->DoubleClick();
    delete ptype;
    cin>>name;
    ptype=new Videotype(name);
    ptype->DoubleClick();
    delete ptype;
    return 0;
}

输入:

输入有3行
第一行是一个文档文件名,第二行是一个图形文件名,第三行是一个视频文件名

输出:

第一行输出Document file :文档文件名
第二行输出Graphics file :图形文件名
第三行输出Video file :视频文件名

示例输入:

a.txt
b.bmp
c.mp4

示例输出:

Document file :a.txt
Graphics file :b.bmp
Video file :c.mp4

提示:

参考答案:

解锁文章

没有看到答案?微信扫描二维码可免费解锁文章

微信扫描二维码解锁

使用微信扫描二维码打开广告页面后可以立即关闭,再刷新此页面即可正常浏览此文章

所跳转广告均由第三方提供,并不代表本站观点!

已经扫描此二维码?点此立即跳转

code

这个人很懒,什么都没留下

文章评论