我个人认为C和C++的本质区别不在于C是否能够完全去替代C++实现C++对对象的封装功能,而是通过C++的这种形式更加方便有效地去引导开发者从对象的角度去考虑架构。其实什么语言基本上都是可以互相实现的,难道可以说汇编可以实现C的所有功能,C就没有存在的价值了么?
恩,是的
那么跟用C++的面向对象比起来有啥区别?
更好实现呗,不用自己构建虚函数表,呵呵
最早的C++编译器就是一个叫cfront的程序,先将c++程序转换为c程序,再用c语言编译器编译
c++有很多现成的库和类封装好,具有良好的继承性。用起来比C方便,面向对象设计是高级语言的又一次进化吧。我也说不太好。学过c++ 才能知道他的优点,当然面向对象用Java也很好,很多人喷c++,但是Java得执行效率还是不如c++,虽然开发周期更短。c在目前嵌入式用的还是多。在应用程序开发里面,仅仅c的话,就成本很高了。
结构体和类是有区别的,具体的Google下吧!
不一样吧
C中的结构体中不能有成员函数吧
而C++中的结构体中可以有成员函数,并且结构体和类是有区别的。
很多人问过我这样的问题了。
C++说白了就是养懒人,本来C可以实现的面向对象编程,C++进行了模板化,使得编码工作的负担更轻。
所以初学者一定要把C吃透,否则学C++,C#都是一知半解,知其然不知其所以然,很难在技术上上升到一定的高度。
回复 8楼 haidong2732 的帖子
可以挂函数指针
C中的结构里面可以放函数指针。然后给指针付个函数地址。这样就可以调用函数。类似。