免费注册 查看新帖 |

Chinaunix

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

[C++] 确认一下c++中不能使用interface(如java)那样的功能把 [复制链接]

论坛徽章:
2
青铜圣斗士
日期:2015-11-26 06:15:59数据库技术版块每日发帖之星
日期:2016-07-24 06:20:00
281 [报告]
发表于 2009-03-27 12:08 |只看该作者
原帖由 reiase 于 2009-3-26 12:31 发表
就拿GP来说,编译器要产生多少静态代码呢。


你说的是代码膨胀么??   以下描述可能粗浅了, 如有不对还请指正。

java的GP为什么没人说它会代码膨胀?   因为它完成的功能少

java的非范型容器, 可以理解为 vector< void* >, 仅有一份代码。

java的范型容器, 可以理解为, vector< void* >实现 vector< T* > 。
同样只有一份 vector< void* > 的代码, 以及一些转型工作。


如果在c++中, 仅仅使用 vector<  T* > , 那么c++生成多少代码, java也要生成多少代码。


c++的代码膨胀, 是因为他能完成更多的功能。 比如, vector< int >  这是目前java做不到的。


原帖由 reiase 于 2009-3-26 12:31 发表
C++砍掉了多少运行时的OO特性!!


C++的理念之一是 : 0代价原则。  所以不提供元数据。
如果需要, 可以做做qt的moc类似的东西。

论坛徽章:
2
青铜圣斗士
日期:2015-11-26 06:15:59数据库技术版块每日发帖之星
日期:2016-07-24 06:20:00
282 [报告]
发表于 2009-03-27 12:10 |只看该作者
原帖由 reiase 于 2009-3-27 11:55 发表
Java高效不是说快过C++,而是说能够接近C++
记得以前看到过一个文档说Java在数值运算方面能够接近甚至超越C++,当然这也是在极端的例子。不过也足以说明Java的性能不可小看了


老兄你说清楚嘛

我也觉得 int sum = 0; for ( int i = 0; i < 10 ; ++i )  sum += f( i ) ; 对java和c++都是差不多的效率。

但是, 实际情况真有这么简单有规律么?

论坛徽章:
2
青铜圣斗士
日期:2015-11-26 06:15:59数据库技术版块每日发帖之星
日期:2016-07-24 06:20:00
283 [报告]
发表于 2009-03-27 12:11 |只看该作者
原帖由 redspider 于 2009-3-27 12:07 发表

这个帖子看过,这是 java 鼓吹者所说的理想状态下的 jvm 所做的运行时优化的结果

补充一下:这个理想状态下的 jvm目前还没出现,似乎也没有要出现的迹象



看来我的猜测还是有点点道理的。

论坛徽章:
2
青铜圣斗士
日期:2015-11-26 06:15:59数据库技术版块每日发帖之星
日期:2016-07-24 06:20:00
284 [报告]
发表于 2009-03-27 12:15 |只看该作者
原帖由 太平绅士 于 2009-3-27 11:33 发表
刚才搜 Stack extends Vector,
跳出篇 "正方体不能继承长方体" 的文章, 比你们讨论的话题有趣。


看了看 ……   确实那篇文章更有营养 ……

果然是reiase口中的人精 ……

论坛徽章:
0
285 [报告]
发表于 2009-03-27 12:33 |只看该作者

回复 #259 art_codes 的帖子

这是wt的主张,一个用类似开发本地gui程序方式开发网站的c++框架
http://www.webtoolkit.eu/wt/doc/reference/html/index.html

[ 本帖最后由 xWander 于 2009-3-27 12:35 编辑 ]

论坛徽章:
0
286 [报告]
发表于 2009-03-27 12:34 |只看该作者
原帖由 reiase 于 2009-3-27 11:55 发表
Java高效不是说快过C++,而是说能够接近C++
记得以前看到过一个文档说Java在数值运算方面能够接近甚至超越C++,当然这也是在极端的例子。不过也足以说明Java的性能不可小看了

如果你非要说某神人可以拿着菜刀做手术,并由此推广至所有外科医生--只能说你有病!

论坛徽章:
0
287 [报告]
发表于 2009-03-27 12:45 |只看该作者
原帖由 flw 于 2009-3-27 12:06 发表
FP 的典范是 Haskell,Haskell 是百分之百的编译型语言,不是什么脚本语言。
Lisp 这种直接写 AST 的怪物……很难按照常规的方法对齐进行分类。


haskell一直想学,苦于没的练手阿

论坛徽章:
0
288 [报告]
发表于 2009-03-27 12:46 |只看该作者
原帖由 liuty2006 于 2009-3-27 11:54 发表

你的无知让我不得不回复一下。

你的底层到底有多底?
你的应用是指什么应用?

微软的OS大部分代码都是c++写的,除了kernel部分。
还有word如果你打算都用c,c#或java写,bill gates会不答应的。

...


无知的人,总是说别人无知。

WPS就是用C全部改写的。为什么不可以。永中OFFICE也是JAVA写的。为什么不可以。

至于LINUX、ORACLE都是C写。他们为什么不用C++去改写呀?

论坛徽章:
1
2015年辞旧岁徽章
日期:2015-03-03 16:54:15
289 [报告]
发表于 2009-03-27 12:46 |只看该作者
原帖由 reiase 于 2009-3-27 12:45 发表

haskell一直想学,苦于没的练手阿

学 Haskell 的好像都不练手。
成天讨论语法,而不讨论业务,这是 Haskell 圈子的特点。

论坛徽章:
0
290 [报告]
发表于 2009-03-27 12:48 |只看该作者
唉 ,年轻人有激情是好事,
可说话咋都是这么冲呢,
根本不考虑别人感受...
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

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

清除 Cookies - ChinaUnix - Archiver - WAP - TOP