免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
楼主: 真菜
打印 上一主题 下一主题

因为没有用Singleton模式,被人批不懂OOP! [复制链接]

论坛徽章:
0
21 [报告]
发表于 2009-01-11 14:29 |只看该作者
原帖由 converse 于 2009-1-11 14:24 发表
楼主,不同意可以,没必要人身攻击,这属于态度问题了.

谢谢提醒,我们就事论事,我现在就删去不文明的字眼。

论坛徽章:
0
22 [报告]
发表于 2009-01-11 14:57 |只看该作者
据我所知,如下的使用c++开发的库都没有使用Singleton模式:
MFC: theApp对象
wxWidgets: wxApp
Qt: QApplication

注意,这里仅仅讨论c++,因为c++提供了全局对象,调用起来很方便,本来使用:

  1. theApp.InitInstance(appInstance, hPrevInst);
复制代码

一句话就可以了,非要改为

  1. WinApp *instance = WinApp.GetInstance();
  2. instance->InitInstance(appInstance, hPrevInst);
复制代码

而且所有引用WinApp方法的地方都要改为两句话,好在wxWidgets、Qt、MFC的设计者没有那么蠢,唉....。

[ 本帖最后由 真菜 于 2009-1-11 14:59 编辑 ]

论坛徽章:
0
23 [报告]
发表于 2009-01-11 15:20 |只看该作者
呵呵

[ 本帖最后由 虎皮尖椒 于 2009-1-11 16:26 编辑 ]

论坛徽章:
0
24 [报告]
发表于 2009-01-11 16:24 |只看该作者
看来,不去学习C++是一项非常英明神武的决定……
看上去,C++编码不仅仅是编码,更是一种信仰表达,一种宗教仪式,一种蕴涵了古老的东方神秘主义色彩的行动……

BTW,既然一肚子不服气干啥不据理力争呢?也许能弄清楚为什么,总比在这里扯有用的多,这里谁都不知道你的应用上下文,说啥都没用。

论坛徽章:
0
25 [报告]
发表于 2009-01-11 16:44 |只看该作者
原帖由 mingyanguo 于 2009-1-11 16:24 发表
看来,不去学习C++是一项非常英明神武的决定……
看上去,C++编码不仅仅是编码,更是一种信仰表达,一种宗教仪式,一种蕴涵了古老的东方神秘主义色彩的行动……

BTW,既然一肚子不服气干啥不据理力争呢?也 ...



也不要盲目排斥C++吗, C++总有很多调转的语法或者不合理的地方, 但只要你使用其合理的地方, 完成要做的任务, 就是OK吗。
例如他的构造函数与析构函数, 引用, 内联, 摸版等, 都是非常好的功能。
很多人讨厌c++, 也许是根本就用不好, 用他不是炫耀语法或者是为了OO的.

论坛徽章:
0
26 [报告]
发表于 2009-01-11 16:59 |只看该作者
原帖由 xhl 于 2009-1-11 00:44 发表



也不要盲目排斥C++吗, C++总有很多调转的语法或者不合理的地方, 但只要你使用其合理的地方, 完成要做的任务, 就是OK吗。
例如他的构造函数与析构函数, 引用, 内联, 摸版等, 都是非常好的功能。  ...

没有排斥C++,只是感慨用C++的人们,我连C++都不熟悉更谈不上排斥了。
一个问题有这么多解决方法,如何取舍权衡,你不觉得是一项非常复杂神秘的行为么?希望有明白人能互相批驳一下,问题才能明了,而不是互相灌水。

论坛徽章:
0
27 [报告]
发表于 2009-01-11 17:12 |只看该作者

回复 #26 mingyanguo 的帖子

哈哈,您那是西方人的思路,真理越辩越明。

论坛徽章:
0
28 [报告]
发表于 2009-01-11 17:21 |只看该作者
原帖由 langue 于 2009-1-11 01:12 发表
哈哈,您那是西方人的思路,真理越辩越明。

拜托大姐您就不要讽刺我了 ,我们都是典型的东方人,但是我们未必都能理解这么神秘的决策。比如,这个问题中,只有一位同学建议我们去读设计模式,其他同学似乎没有讨论下原po这种情况应该怎么解决。大姐您对各种语言均有深厚的造诣,要不您科普一下?对于我们这些不怎么写OO代码的人来说,看《设计模式》这本书无疑困难重重。谢啦。

论坛徽章:
0
29 [报告]
发表于 2009-01-11 17:25 |只看该作者
楼主想过没有你的static int count 方式是要在运行时才会发现多实例问题.
而singleton方式会让你在编译时就排除多实例问题.

论坛徽章:
0
30 [报告]
发表于 2009-01-11 17:44 |只看该作者
原帖由 ljoo 于 2009-1-11 01:25 发表
楼主想过没有你的static int count 方式是要在运行时才会发现多实例问题.
而singleton方式会让你在编译时就排除多实例问题.


不用试图和楼主解释了,他似乎不懂设计模式,也认为别人指出他的代码不足是sb行为。
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP