您的位置:首页 > 编程语言 > C语言/C++

C++ Java C#的比较-命名空间

2006-02-27 00:28 459 查看
标题:命名空间

 

 

支持多范型编程

引用的简洁性

主体的简洁性

优劣比较

C++

+1

+1

-1

9

Java

-1

+1

-1

8

C#

-1

-1

+1

8

讨论:

1.   C++通过namespace关键字支持命名空间,并且由于C++支持多范型编程,允许在命名空间里面声明变量、函数,相对C#和Java,对用户来说这提供了更加丰富的选择。

2.    C#通过namespace关键字支持命名空间,但是由于C#不支持多范型编程,因此相对于C++,要扣掉一分。

3.    Java通过package关键字支持命名空间,但是Java不支持多范型编程,扣掉一分;而且当引用某个命名空间的部分或者整体的类型的时候,语法上更加复杂一些(见下例),所以还要扣掉一分;但是由于命名空间主体的定义部分更加的简略,所以加一分(见下例)。

实例:

namespace test // C++的命名空间定义

{

       using n.a;              //引入一个类型

       using n;          //引入n的部分或者所有的类型

       int i;

       int fun();//支持多范型

       class foo{};

}

 

package test; // Java的命名空间定义

//不必象C#和C++那样把命名空间的主题放在{}当中,更加的简略

import n.a;      //引入一个类型

import n.*;     //引入n的部分或者所有的类型,语法相对于C++和C#更加的复杂一些

class foo{};

 

namespace test // C#的命名空间定义

{

       using n.a;              //引入一个类型

       using n;          //引入n的部分或者所有的类型

       class foo{};

}

 

 

 
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  c++ c# java 编程 class import