C++语言不是纯面向对象编程语言,C#语言是完全面向对象语言。
比如,C++语言中保留了C语言的大量特性,即面向过程模式,同时增加了面向对象的语法——类。所以如果你刚刚从C程序员转到C++程序员,你会发现自己编写的代码是一个“四不像”,有很多的函数依然很随意的定义成全局函数,并没有封装成某个类的方法。变量也是,全局变量一堆。整个程序处于面向过程和面向对象的风格。
而C#作为完全面向对象的编程语言,必须遵循面向对象的所有规定:所有的函数必须声明在一个类中,全局变量也必须声明在类中,充分体现了面向对象的中心思想——万物皆对象!