C#的命名空间与C++的头文件有什么区别?

解决方案 »

  1.   

    抽象程度不同,C++的头文件是物理存在的,一个头文件就是一个文件C#/java的using/import是抽象的,一个命名空间内的东西你是现在一个文件还是实现在多台计算机都没关系C用头文件是一种历史上硬件的限制,C++兼容C也用了头文件,但C++已经引入了命名空间,java、C#出现丸子玩可以不用头文件了多学点历史是有好处的,眼界宽一些,无论哪个领域
      

  2.   

    [Quote=引用 3 楼  的回复:]抽象程度不同,C++的头文件是物理存在的,一个头文件就是一个文件C#/java的using/import是抽象的,他是把类在分类,起名叫命名空间,实际用等于是调用类的方法,编译成IL时候是把代码贴过来的意思,和你代码生成IL代码
      

  3.   

    请不要把java扯进来,java和C#在这点上面差别很大的,并非你所想象的那么简单,我也不想在此展开对java 的比较。
      

  4.   

    我个人是不太理解.net人和java人的各种恩怨,以至于在.net提java,在java提.net就碰到了N多人的G点反正这种纷争我也不会卷入
      

  5.   

    我没说各种恩怨,有恩怨我也不会两个都学了。我仅是要表示,这两者区别很大,你一概而论是错误的,而就你的解释只能适用于.NET,对JAVA的命名空间不适用,Java的命名空间比.NET的严格得多了,并非抽象的,而是和实际文件夹捆绑,如果文件夹名和命名空间名不一致,编译不会让你通过,另外Java的Import和.NET的Using也不同……,不展开了,到此为止。