c#和c++区别

回答
爱扬教育

2022-06-24

  • 相关推荐
C#不支持多重继承,这是与C++明显区别的地方,说真的多重继承有时候用起来挺麻烦的,可能微软怕你用不好吧,不给你提供了,但我个人觉得没有了多重继承感觉有点可惜。 在标准的C#安全代码中不支持指针类型的操作,然而,你却能在微软所谓的“非安全代码”中操作指针类型对象。

扩展资料

  C#中所有对象都只能通过关键词“new”来创建,C++的“类名_对象名”方式在C#中变为声明一个引用。呵呵,万物皆对象,连常见的数据类型都变为对象了,JAVA味道很浓。

  数组变为了类,因此对于数组里的元素,.NETFramework直接提供了一系列的操作:查找、排序、倒置……

  在C#里面,数组的元素都是存放在托管堆里面,比起C++的在内存里不确定位置申请一块连续空间要安全得多。

  C++的switch后跟参数必须是int型,而C#却允许string型,这点改进觉得真的是比以前方便多了!

  C#会禁止所有switch..case语句的失败情形,除非case语句后是空格,否则执行了前一个case语句就算没有break也会停止执行后面的case语句。

  在异常处理上,C++允许抛出任何类型,而C#中规定抛出类型为一个派生于System.Exception的对象。

  C++的宏在C#中被抛弃了很多,而且也不建议使用,因此很少见。

  C++的模板在C#里没有了,但在C#中我们找到了能完成模板任务的更锋利的武器:委托。

  C++的全局变量这一概念没有了,C#和JAVA类似,要把所有东西都放在类里面,还建议使用命名空间包含起来。