命名空间

转载 2012年03月30日 17:36:51

搞不明白,那么简单的东西,一帮人搞得那么复杂。个人觉得有点像类     又有点像   头文件  

命名空间英语Namespace)表示标识符(identifier)的上下文(context)。一个标识符可在多个命名空间中定义,它在不同命名空间中的含义是互不相干的。这样,在一个新的命名空间中可定义任何标识符,它们不会与任何已有的标识符发生冲突,因为已有的定义都处于其它命名空间中。

例如,设Bill是X公司的员工,工号为123,而John是Y公司的员工,工号也是123。由于两人在不同的公司工作,可以使用相同的工号来标识而不会造成混乱,这里每个公司就表示一个独立的命名空间。如果两人在同一家公司工作,其工号就不能相同了,否则在支付工资时便会发生混乱。

这一特点是使用命名空间的主要理由。在大型的计算机程序文档中,往往会出现数百或数千个标识符。命名空间(或类似的方法,见“命名空间的模拟”一节)提供一隱藏區域標識符的機制。通过将逻辑上相关的标识符组织成相应的命名空间,可使整个系统更加模块化

编程语言中,命名空间是一种特殊的作用域,它包含了处于该作用域内的标识符,且本身也用一个标识符来表示,这样便将一系列在逻辑上相关的标识符用一个标识符组织了起来。许多现代编程语言都支持命名空间。在一些编程语言(例如C++Python)中,命名空间本身的标识符也属于一个外层的命名空间,也即命名空间可以嵌套,构成一个命名空间,树根则是无名的全局名空间

函数的作用域可被視作隱式命名空间,它們和可見性、可訪問性和对象生命周期不可分割的联系在一起。


使用方法有以下三种: 
1>   using   namespace   sdm; 
然后你就可以使用变量temp: 
temp=9; 
还可以使用sdm中的其他每一个成员。 
2> using   sdm::temp; 
在这个文件中只能使用sdm中的temp这个变量。 
3> 你在使用时直接使用sdm::temp: 
cout < <sdm::temp < <endl; 
使用其它的成员也这样调用。 


浅谈C#命名空间的命名规范和习惯

 一个好的开发人员在开发软件时,应该有良好的命名空间命名习惯,在msdn介绍.NET Framework 类库概述时,提到的是库开发人员在创建命名空间的名称时应使用以下原则:“公司名称.技术名称”例如...
  • wanghaofeng
  • wanghaofeng
  • 2009年11月19日 10:22
  • 5091

命名空间详解

1、一种定义作用域机制,即命名空间。用于放置传统上C和C++全局声明的东西。这种作用域可以命名,访问命名空间的成员采用访问类成员的传统记法:namespace_name::mumber_name。事实...
  • SKY453589103
  • SKY453589103
  • 2015年02月28日 10:40
  • 978

【jQuery学习笔记-----jQuery事件命名空间】

jQuery事件命名空间 jQuery支持事件命名空间,以方便事件管理。例如,在下面的示例中,为div元素绑定多个事件类型,然后使用命名空间进行规范,从而方便管理。所谓事件命名空间,就晨事件类型后面...
  • pigpigpig4587
  • pigpigpig4587
  • 2014年04月29日 17:09
  • 5763

C#正则表达式(5):命名空间System.Text.RegularExpressions下面的类简介1

在命名空间RegularExpressions里有下面这些对象,10个类,一个代理,一个枚举类型 Classes   Class Description Ca...
  • weiwenhp
  • weiwenhp
  • 2012年06月15日 15:25
  • 9973

Android中的命名空间

转: Android中的命名空间 基本概念介绍 命名空间(namespace) XML 命名空间提供避免元素命名冲突的方法。—w3school.com ...
  • wxx614817
  • wxx614817
  • 2016年10月24日 10:58
  • 2726

xml命名空间详解

在研究spring security的时候,里面提到了一个重要的感念就是命名空间,当时以为是spring的一个什么特殊功能,后来研究后才发现是xml的一个知识点,顺便又研究了一下这个知识,找到一篇文章...
  • w938706428
  • w938706428
  • 2014年11月24日 18:18
  • 4433

Spring常用命名空间

Spring常用命名空间 命名空间
  • VincenLlin
  • VincenLlin
  • 2014年06月13日 16:13
  • 1202

ArcGIS Engine 开发中用到的一些命名空间和类

命名空间 ESRI.ArcGIS.Controls; ESRI.ArcGIS.Carto; ESRI.ArcGIS.esriSystem; ESRI.ArcGIS.Geometry; ...
  • bcbobo21cn
  • bcbobo21cn
  • 2016年03月12日 13:53
  • 1306

Spring命名空间介绍

什么是spring命名空间?这个就要从XML说了,Spring的配置管理可以利用XML方式进行配置,而XML里面就有命名空间这个概念。。实际上就和标签的意思有点像 你给一个命名空间以后,这个XML文件...
  • zhushuai1221
  • zhushuai1221
  • 2016年12月14日 09:48
  • 1191

cocos 给绑定类加一个命名空间

本来以为很简单的,妈的,碰到一大堆的坑。记录一下 步骤: 1:给.h和.cpp加上命名空间。 #pragma once #include "cocos2d.h" USING_NS_CC; nam...
  • keep_moving_cqu
  • keep_moving_cqu
  • 2015年08月18日 12:13
  • 643
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:命名空间
举报原因:
原因补充:

(最多只允许输入30个字)