作者wu110011 (不下棋)
看板C_and_CPP
标题[问题] Factory Pattern问题
时间Thu Dec 15 20:41:39 2016
问题:在Factory Pattern不同Sub Class(Circle,Square,Rectangle)中,
有不同的function功能(print(),put(),push()),
请问我要如何设计才能让Super Class(Shape)存取这些function呢?
http://imgur.com/a/ps24S
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 106.1.121.132
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/C_and_CPP/M.1481805702.A.B0D.html
1F:推 CoNsTaR: 无法,要马做型别相依的多型,要马把那些functions抽象出 12/15 23:35
2F:→ CoNsTaR: 来放在superclass里 12/15 23:35
3F:→ CoNsTaR: 可以去多了解 category theory 和 subtyping 的关系 12/15 23:36
4F:推 andyjy12: 用dynamic_cast直接变成你想要的type 12/16 12:24
5F:→ andyjy12: 或是提供一个 exec("push","arg lis") 在base class 12/16 12:24
6F:→ andyjy12: 或是参考Metaobject的方式 12/16 12:26
7F:推 soheadsome: visitor pattern 12/16 13:40