博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
[LintCode] Toy Factory 玩具工厂
阅读量:6617 次
发布时间:2019-06-24

本文共 1007 字,大约阅读时间需要 3 分钟。

Factory is a design pattern in common usage. Please implement a ToyFactory which can generate proper toy based on the given type.

Example
ToyFactory tf = ToyFactory();
Toy toy = tf.getToy('Dog');
toy.talk(); 
>> Wow
toy = tf.getToy('Cat');
toy.talk();
>> Meow

这道题还是考察工厂模式Factory Pattern的题,跟之前那道没有啥区别,难度并不是很大,参见代码如下:

/** * Your object will be instantiated and called as such: * ToyFactory* tf = new ToyFactory(); * Toy* toy = tf->getToy(type); * toy->talk(); */class Toy {public:    virtual void talk() const=0;};class Dog: public Toy {    void talk() const {        cout << "Wow" << endl;    }};class Cat: public Toy {    void talk() const {        cout << "Meow" << endl;    }};class ToyFactory {public:    /**     * @param type a string     * @return Get object of the type     */    Toy* getToy(string& type) {        if (type == "Dog") {            return new Dog();        } else if (type == "Cat") {            return new Cat;        }        return NULL;    }};

本文转自博客园Grandyang的博客,原文链接:,如需转载请自行联系原博主。

你可能感兴趣的文章
XML中添加换行符
查看>>
在C#中使用属性控件添加属性窗口
查看>>
printf()详解之终极无惑
查看>>
交叉检验---训练数据,验证数据和测试数据
查看>>
AspNetPager分页控件配置
查看>>
备胎的养成记KeepAlived实现热备负载
查看>>
相等与全等
查看>>
VS无法设置断点的解决方案
查看>>
Android -- 再来一发Notification
查看>>
从尾到头打印链表
查看>>
【hibernate】 hibernate的主键策略
查看>>
单表代替密码原理及算法实现
查看>>
如何让VS检查函数和类Comment的添加情况
查看>>
Linq案例
查看>>
制作播放视频关灯效果
查看>>
【POI】解析xls报错:java.util.zip.ZipException: error in opening zip file
查看>>
我的第一个Node web程序
查看>>
【IntelliJ Idea】idea下hibernate反向生成工具,根据数据表生成实体
查看>>
第 8 章 Spring Data
查看>>
[Everyday Mathematics]20150120
查看>>