回复楼上,也没啥东西,是他自己屏蔽的,这点我也比较好奇。
呵呵,解释一下我笑的原因吧,C从来都是一个面向过程的结构化的语言,它完全没有OO的特征。用C实现OO,简直就是个笑话。
后来一想,也许是我错了,据我所知C++的编译器就是用C写的,OO或是PO,完全是一个认知角度的问题,也许人家说的是这一点呢?
一看到15楼的图片,我又笑了,原来是GObject啊,那是一个独立的自由库,一个对象框架,它不光应用于C,其它语言也可以用。
关于对象,那是由GObject实现的。
关于这个库我没有用过,因为我一直在用面向对象的语言,上学时用C++,后来用C#,这段时间在用java。
以下是维基百科中的一段评述。没别的意思,想怎么用是个人的事,我不干涉
呵呵,解释一下我笑的原因吧,C从来都是一个面向过程的结构化的语言,它完全没有OO的特征。用C实现OO,简直就是个笑话。
后来一想,也许是我错了,据我所知C++的编译器就是用C写的,OO或是PO,完全是一个认知角度的问题,也许人家说的是这一点呢?
一看到15楼的图片,我又笑了,原来是GObject啊,那是一个独立的自由库,一个对象框架,它不光应用于C,其它语言也可以用。
关于对象,那是由GObject实现的。
关于这个库我没有用过,因为我一直在用面向对象的语言,上学时用C++,后来用C#,这段时间在用java。
以下是维基百科中的一段评述。没别的意思,想怎么用是个人的事,我不干涉
尽管许多的 GObject 应用程序完全以 C 来撰写,但 GObject 系统可以很好地对应到许多语言,像C++、Java、Ruby、Python和 .NET/Mono等的原生对象系统。所以在为已经使用 GObject 框架写好的库创建语言绑定时,通常比较不会那么痛苦。
以 C 来撰写 GObject 代码时,却是相对痛苦。学习曲线十分陡峭,有高级面向对象语言经验的开发者可能会发现以 C 撰写 GObject 代码相当的乏味。举例来说,要继承一个类型(即使是继承 GObject)可能就需要撰写和(或)复制上百行的代码。虽然如此,不可否认地,GObject 可以为 C 的代码提供面向对象的功能。
GObject 应用程序在运行时期为类型和接口所创建的元对象提供了互相操作的良好支持。可互相操作的能力被使用在语言绑定上,还有用户界面设计应用程序(如Glade)上。Glade 允许加载提供放了Widget(组件,派生自GObject)的库,并且取得类型的属性列表、类型信息以及文件字符串。
还好奇一点,BlueGuy的智商是多少?
以 C 来撰写 GObject 代码时,却是相对痛苦。学习曲线十分陡峭,有高级面向对象语言经验的开发者可能会发现以 C 撰写 GObject 代码相当的乏味。举例来说,要继承一个类型(即使是继承 GObject)可能就需要撰写和(或)复制上百行的代码。虽然如此,不可否认地,GObject 可以为 C 的代码提供面向对象的功能。
GObject 应用程序在运行时期为类型和接口所创建的元对象提供了互相操作的良好支持。可互相操作的能力被使用在语言绑定上,还有用户界面设计应用程序(如Glade)上。Glade 允许加载提供放了Widget(组件,派生自GObject)的库,并且取得类型的属性列表、类型信息以及文件字符串。
重剑无锋,大巧不工