伪IT男
分类:
2007-07-16 00:24:53
2.几个名词的基本关系是:
(1) vc 、bcb与c++ Builder
vc是微软MICROSOFT的产品,只能在windows下运行,而BCB、C++Builder是Borland公司的产品,c++builder是跨平台的。它们的编译库有引起些不同而已。VC中用的C++和borland C++ 的区别在那里?
如:
a)两个都是Ansi C++的超集,各自增加了一些关键字, 在界面风格和类命名上面也各自成林,vc使用C作为类的前导字符,而BC使用T作为前导字符。
b) 微软公司:vc++==visualc++,一般也简称为VC,是C++的超集,可以支持标准 C++,但是它包含了标准C++没有的部分:MFC ;
c) Boland公司:C++ BUILDER(CB),和VC类似,只是它扩充的库是VCL,通过一定的手段,也CB可以支持MFC; bcb是Borland C++ Builder的缩写
(2)c++ 与.net
C++是程序设计语言,而.Net是一个平台、一系列的技术。
而C++.NET是基于 Microsoft .NET框架下的C++语言, 是C++的.NET升级版
a) .C++编译结果是二进制,可以直接运行
b) .C++.Net支持二进制的(unmanaged),也支持基于DotNet Framework的程序(Managed)
(3)c#与c++:
其实c#和c++没有什么关系, c#是微软新推出的既具备vb的简单易用,又具备c++的功能强大的开发语言。c++与c#的不同还在于c++可以使用非托管类,而c#全是托管类.
C#需要.NET环境。是微软开发的用于对抗JAVA的新的编程语言。相对于C++功能(底层硬件)上有所削弱,并是取消了很多C++中功能强大,但很不安全的特性。还有C#可以用来开发ASP。NET程序。有了微软的强力支持,应该比较有前途的。
C++不需要.NET环境。是一个相对传统的语言。
其实c++与c#的区别在于c++没有完全面向对象而c#是完全面向对象的语言
c#和C/C++的区别,就是java和c/c++的区别
C#和java一样,都是在虚拟机上运行,具有那“一处编译,到处运行”的恶名。
C#和java都有自己的一套类库,和C/c++的是完全区别的。
至于语法上,C#已经去掉了可爱的指针,使用隐藏的引用。
C#和java一样具有gc功能,可以实现安全的内存管理。 c#以.Net Framework为依托,编译成IL(中间语言),和VB.Net,vJ#相互调用,就象在一个语言中。
c#的语法简直是java 的翻版,甚至c#的源程序不用怎么修改就可以被java编译,当然有类库的问题。。。
(4) c#与vc.net:
c#是为c/c++程序员设计的.vc.net就是基于.net编译器的(也就是编译成中间代码)的vc。
(5) c#与.net :
.net是一种技术标准和解决方案。
C#是一种编程语言,基于.net技术标准的语言,是.net系列中的一个语言。
C#运行时都会调用.net的类。C#少不了.net库.
(6)c#与VisualC#,C#.NET
c#是微软开发的一种类似java和c++的语言
VisualC#是一种可视化的编程,其实Visual studio.net2003本身也是用.net框架写出来的
C#.NET不仅是可视化编程同时对网络的支持更强大。
(7) Visual Studio .NET与.NET Framework : 类似 JBuilder 与 JDK
3.学习
(1)如果你想做系统底的,建议学C++;如果想做高层应用方面的,建议学C#。
(2)语言上面C#很象JAVA不过没有指针,有点讨厌,不过可以用 unsafe来用指针,可是不推荐那样,如果你用贯了C++建议两个都学,如果你的底子好,花不了多少时间,因为你说你以前用VC6的 那样你一定对MFC和ATL很熟悉,所以VC7只是加了一点东西而已没什么 而且属性编程比以前的APPWIZARD还方面,所以很快就可以适应了,而C#主要是对.net framework,所以主要学习这方面的知识就可以了
(3) 至少现在,.NET环境还不是很方便,在很多版本的操作系统中,并不包含。NET环境。使用基于。NET 的程序还要安装,比较麻烦。不过根据windows以往的经验,.net一定会被捆绑在操作系统中大面积推广的。不过,专家预测,WIN32编程至少还有10年的发展空间。
(4) .net的主推语言是VB和C#,不仅仅是C#。在.net中,只有VB和C#能轻松优美的写出符合CLS的代码,其他语言(包括MS的C++和Jscript)不是非常难看,就是功能不强。
从.net诞生开始就可以看出,未来的.net仅能存在两种语言——VB和C#
(5)C#牺牲了C++的低层功能,它使用了VB的好多语法,学习起来更加简单,不过目前大多数 应用在WEB领域,不过真正想在IT行业做事情,还是要学习C++和java的。
4.更细节的参考
(1).NET 、 C# 和 ASP.NET 的关系,http://www.cnblogs.com/zglloo/archive/2006/10/07/522703.aspx
(2)C#和C++的区别,
(3)C++和C#的语法和功能区别,http://blog.sina.com.cn/u/587bcc93010007dk
(4) 什么是.net,
(5)什么是.net,http://hi.baidu.com/0791nc/blog/item/2e079d317a7b93a85edf0e5a.html
(6)什么是.NET Framework,
(7) 什么是.NET架构, http://wangzhonnew.spaces.live.com/blog/cns!9ff69a7079f8d17b!187.entry
(8)什么是.NET Framework, http://www.blog.edu.cn/user2/42379/archives/2006/1113089.shtml
(9) What Is .NET,
|
chinaunix网友2008-04-16 21:43:31
很详细!java好像把指针用引用代替了! 而且定义对象的含义完全不同! 比如 class object; 在C++中就可以产生object的实体了,也就是说它的地址是有值的,而在java中 只是产生一个引用,应该说只是产生的一个空指针!要产生对象实体还需要用new来分配!