1.2.5 C++(www.cppentry.com)和C#不得不说的那点事儿
自从微软推出全新的开发语言C#之后,关于C++(www.cppentry.com)与C#之间的争论就没有停止过。就像C++(www.cppentry.com)继承了C语言的许多特性一样,C#也继承了C++(www.cppentry.com)的许多特性,同时增加了很多现代编程(www.cppentry.com)语言的新特性。配合强大的.NET Framework,C#下的应用开发越来越简单,应用也越来越广泛。C++(www.cppentry.com)会不会被新兴的C#革命?我们应该学习C++(www.cppentry.com)还是C#?
圣经上说:你必须知道真相,真相会使你自由。虽然C#和.NET Framework让开发变得更简单,使用几行C#代码就可以完成几十行C++(www.cppentry.com)代码才能完成的功能,而且C#具有简单的类库操作和面向对象编程(www.cppentry.com)的完美特性,但是,所谓成也萧何,败也萧何,正是因为.NET Framework的引入,在C#和操作系统之间隔了一层,让我们无法了解C#背后的真相,处处受制于.NET Framework。同样实现一个功能,使用C#我们只有一种方法,而使用C++(www.cppentry.com),我们如果明白背后的机制,就可以用不同的方法应对不同的情况,实现最优的方案。没有编程(www.cppentry.com)语言比C++(www.cppentry.com)更加贴近Windows操作系统了,这一点是不可否认的。可以说,只要追求自由的人存在,C++(www.cppentry.com)就不会消失;只要操作系统是用C++(www.cppentry.com)写的,C++(www.cppentry.com)就不会消失。
从应用领域上讲,C#主要应用在Windows平台上,用于开发与用户界面、网络和数据库相关的应用。而C++(www.cppentry.com)主要应用在Windows、Linux和嵌入式系统等平台,其业务领域也非常广泛,从服务器应用程序的开发到多媒体游戏的开发,从图像处理到工程控制,处处都有C++(www.cppentry.com)的身影。平台的广泛性让C++(www.cppentry.com)的应用范围更加广泛。
C#是继承自C++(www.cppentry.com)的,学好C++(www.cppentry.com)之后,可以轻松地学好C#;但是,学好C#却不一定能保证学好C++(www.cppentry.com)。
语言无所谓好坏强弱之分,C#能做的,C++(www.cppentry.com)不一定都能做,而C++(www.cppentry.com)能做的,C#也不一定都能做好。所以,根据应用场景选择合适的语言才是最重要的。在自由和束缚之间,我们选择自由;在C++(www.cppentry.com)和C#之间,我选择C++(www.cppentry.com)。