设为首页 加入收藏

TOP

1.1.3 C#与C++的区别
2013-10-07 14:16:23 来源: 作者: 【 】 浏览:62
Tags:1.1.3 区别

1.1.3  C#与C++(www.cppentry.com)的区别

从语言体系上讲,C#语言属于C语言家族,是对C语言C++(www.cppentry.com)语言的发展。它沿用并且发展了C++(www.cppentry.com)的基本思想,又去除和限制了一些相对比较难的技术。例如限制了指针,在C#语言中使用指针只能在不安全代码中才能使用。

从标准化的角度讲,C#语言是Microsoft公司在C++(www.cppentry.com)基础上扩充发展出来的。它并不是一个国际化标准,它只是Microsoft公司的一个产品。但是C++(www.cppentry.com)是国际化的标准,有标准的组织在维护,它并不属于任何一个公司或者组织。

警告:特别要强调C++(www.cppentry.com)和VC++(www.cppentry.com)的区别和联系,很多初学者常把两者看做是同一个事物。这是错误的,也是相当一部分初级程序员模糊的问题。VC++(www.cppentry.com)是Microsoft公司添加了许多类库以后的一种C++(www.cppentry.com)版本,这些类库主要是Windows平台上一些API的封装,所以用VC++(www.cppentry.com)开发Windodws应用程序可省去很多麻烦的过程。

从技术应用角度讲,C#语言在C++(www.cppentry.com)基础上扩充和发展出来以后,更注重于实际开发应用,在思想上完全面向对象。限制了C++(www.cppentry.com)的一些底层的东西,又增加了一些新的功能,例如自动回收内存。但这些功能的扩充,导致了C#语言不可能像C++(www.cppentry.com)那样在底层控制上自由、灵活、效率高。但这种改进在软件开发效率上有很大的提高,同时。对于学习者入门的要求也降低了。

总的来说,C#语言是为了提升软件开发效率将软件工业化的产物,也是Microsoft公司为了市场竞争而推出的一个产品。其竞争的对象就是Java语言,或者说Java EE平台,两者的运行机制非常相似。相比之下,C#语言可以做到的事情C++(www.cppentry.com)语言都能做到,并且更完全、更面向计算机底层,在一定程度上效率更高。只不过用C++(www.cppentry.com)实现会更加复杂,对程序员的要求也更高。

注意:很多初学者看到计算机底层这个概念,往往思考得不太清楚。在程序设计或整个计算机系统中,说底层其实就是和计算机硬件接近的程度。例如,说汇编语言很底层,就是说汇编语言更接近硬件。说到上层应用,大多数情况下,都是一些业务逻辑上的开发,它们和硬件的关系并不大。


】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到: 
上一篇C++书籍推荐:有一定C++基础的读者 下一篇1.1 抽象的过程

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容: