LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
12
返回列表 发新帖
楼主: kj501

C语言中的面向对象思想

 关闭 [复制链接]
发表于 2006-8-22 23:51:34 | 显示全部楼层
用C来OO有点累的。。。。。。。。。。
现在觉得是自找麻烦..要OO还是用c++吧
回复 支持 反对

使用道具 举报

发表于 2009-3-1 14:39:09 | 显示全部楼层
这书有没有中文版的啊,英文看得太累了
回复 支持 反对

使用道具 举报

发表于 2009-10-18 20:43:24 | 显示全部楼层

其实 面向对象并非是高级语言的特征

我们老师对我说的  任何语言都可以 OO  只是有些语言写起来方便一些 并且 举例说 大型的软件项目都是OO 设计的  。晕倒 。。。   

今天你 OO 了吗 ?

对不起 我挖坟了 =_=!!
回复 支持 反对

使用道具 举报

发表于 2009-10-19 10:00:45 | 显示全部楼层
个人感觉,用C实现OO就像是用叉子吃中餐
和筷子一样能吃饭
但是看你个人的喜好了
有时候会方便些(比如吃鸡蛋)
有时候不方便(比如吃面条)
回复 支持 反对

使用道具 举报

发表于 2009-10-19 13:33:08 | 显示全部楼层
现代计算机科学已经证明,一个图灵完备的语言能够实现任何已知的编程特性。

因此,不论是面向对象也好,范型也好,函数式编程也好,动态函数与动态对象也好,C都是可以实现的。关键问题在于:

1。是否能够以优雅的方式实现,并且导致优雅的,可读性高的,易于维护的代码?
2。是否能够使程序对于低水平少经验的程序员也容易操控?

这两点是很重要的,因为在常规的项目中你不可能维系一个稳定的,大量的资深程序员队伍,在绝大多数的软件项目中,一定会有新手存在,程序语言对于新手容易把握其实是很重要的。

C++的设计本意是为了取代C,但它实际上现在主要用于游戏编程。
Java设计的本意是为了跨平台,但它实际上现在主要用于服务器编程。
上面两者说明语言设计者可能是技术高手,但并不是市场的高手,它并不明白市场上最需要的是什么语言作用在什么领域。

回楼主一个:其实我认为C++的ABI问题才是阻碍C++流行的根本问题,是因为C的ABI相比C++而言太规矩太标准太容易使用,才能被最广泛的应用。而C++在这个问题上,输了大量的基础库的支持。

这是一篇讲述ABI问题的较浅显文章:
http://developers.sun.com/solari ... CC_abi_content.html
回复 支持 反对

使用道具 举报

发表于 2009-10-21 09:15:28 | 显示全部楼层
不用刻意去追求OO
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表