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

时间限制: 1 Sec  内存限制: 128 MB

提交: 118  解决: 62

题目描述

鼠标双击不同的图标产生不同的效果,比如双击文档(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

你  离  开  了  ,  我  的  世  界  里  只  剩  下  雨  。  。  。

#include <string>
#include <iostream>
using namespace std;
class Filetype
{
public:
virtual void DoubleClick() =0;
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;
}

YTU 2960: 改错题--小鼠标,你要干什吗?的更多相关文章

  1. YTU 2844: 改错题A-看电影

    2844: 改错题A-看电影 时间限制: 1 Sec  内存限制: 128 MB 提交: 69  解决: 47 题目描述 注:本题只需要提交标记为修改部分之间的代码,请按照C++方式提交. 小平家长为 ...

  2. YTU 2580: 改错题----修改revert函数

    2580: 改错题----修改revert函数 时间限制: 1 Sec  内存限制: 128 MB 提交: 194  解决: 82 题目描述 修改revert函数,实现输入N个数,顺序倒置后输出 #i ...

  3. YTU 2838: 改错题AB-装置连接

    2838: 改错题AB-装置连接 时间限制: 1 Sec  内存限制: 128 MB 提交: 81  解决: 49 题目描述 注:本题只需要提交标记为修改部分之间的代码,请按照C++方式提交. 有AB ...

  4. YTU 2639: 改错题:类中私有成员的访问

    2639: 改错题:类中私有成员的访问 时间限制: 1 Sec  内存限制: 128 MB 提交: 431  解决: 297 题目描述 /* 改错题: 设计一个日期类和时间类,并编写全局函数displ ...

  5. YTU 2610: A改错题--体检情况分析

    2610: A改错题--体检情况分析 时间限制: 1 Sec  内存限制: 128 MB 提交: 233  解决: 161 题目描述 注:本题只需要提交标记为修改部分之间的代码,请按照C++方式提交. ...

  6. YTU 2609: A改错题--学生信息的输入和输出

    2609: A改错题--学生信息的输入和输出 时间限制: 1 Sec  内存限制: 128 MB 提交: 238  解决: 157 题目描述 注:本题只需要提交标记为修改部分之间的代码,请按照C++方 ...

  7. YTU 2955: A改错题--销售部的打印机

    2955: A改错题--销售部的打印机 时间限制: 1 Sec  内存限制: 128 MB 提交: 61  解决: 47 题目描述 销售部新进了一台快速打印机,使用频率很高.为了能够对打印情况进行统计 ...

  8. YTU 2954: A改错题--是虫还是草

    2954: A改错题--是虫还是草 时间限制: 1 Sec  内存限制: 128 MB 提交: 83  解决: 55 题目描述 冬虫夏草为虫体与菌座相连而成,冬天是虫子,夏天却是草.根据类生物(bio ...

  9. YTU 2622: B 虚拟继承(虚基类)-沙发床(改错题)

    2622: B 虚拟继承(虚基类)-沙发床(改错题) 时间限制: 1 Sec  内存限制: 128 MB 提交: 487  解决: 393 题目描述 有一种特殊的床,既能当床(Bed)用又能当沙发(S ...

随机推荐

  1. 【06】Firebug记录Javascript日志

    Firebug记录Javascript日志 你可以使用Firebug来生成日志. 这有助于我们调试web页面并发现页面的错误. 在Firefox浏览器中执行以下代码: <!DOCTYPE HTM ...

  2. python之图形界面GUI开发 Tkinter 2014-4-7

    1.导入Tkinter 可以使用以下三种方法(1)from Tkinter import *#导入Tkinter(2)import TkinterTkinter.methodA使用 Tkinter.m ...

  3. HDU 2629 Identity Card

    简单题 给出身份证号 判断住址 和出生年月 熟练字符串的操作 主要是string::substr(s, l)//s:起始位置 l长度 #include <iostream> #includ ...

  4. 莫队乱搞--BZOJ2038: [2009国家集训队]小Z的袜子(hose)

    $n \leq 50000$的$\leq 50000$的数字序列,$m \leq 50000$个询问,每次问一个区间中随机拿两次(不放回)拿到相同数字的概率,以既约分数形式输出. 莫队入门.把询问按“ ...

  5. C#特性入门《详解》

    原文发布时间为:2008-11-22 -- 来源于本人的百度文章 [由搬家工具导入] <转>http://www.bccn.net/Article/net/cs/jszl/200709/6 ...

  6. ES6__函数的扩展

    /** * 函数的扩展 * 1 为函数参数指定默认值 * 2 函数的 rest 参数 * 3 箭头函数 */ // ------------------------------------------ ...

  7. iOS 调用系统相册 相机 时,显示中文标题

    解决手机语言已经设置显示中文 在调用系统相册.相机界面 时显示英文问题, 在 info.plist里面添加Localized resources can be mixed YES 表示是否允许应用程序 ...

  8. union关键字和字节大小端序的确定

    union 关键字的用法与struct 的用法非常类似. union 维护足够的空间来置放多个数据成员中的“一种”,而不是为每一个数据成员配置空间,在union 中所有的数据成员共用一个空间,同一时间 ...

  9. [Bzoj5179][Jsoi2011]任务调度(左偏树)

    5179: [Jsoi2011]任务调度 Time Limit: 10 Sec  Memory Limit: 128 MBSubmit: 5  Solved: 4[Submit][Status][Di ...

  10. spring/spring boot/spring mvc中用到的注解

    在spring Boot中几乎可以完全弃用xml配置文件,本文的主题是分析常用的注解. Spring最开始是为了解决EJB等大型企业框架对应用程序的侵入性,因此大量依靠配置文件来“非侵入式”得给POJ ...