zoukankan      html  css  js  c++  java
  • 几种常见语言的命名空间(Namespace)特性

    命名空间提供了一种从逻辑上组织类的方式,防止命名冲突。

    几种常见语言

    C++

    命名空间是可以嵌套的

    嵌套的命名空间是指定义在其他命名空间中的命名空间。嵌套的命名空间是一个嵌套的作用域,内层命名空间声明的名字将隐藏外层命名空间声明的同名成员:

    int x = 20; 
    namespace outer { 
      int x = 10; 
      namespace inner { 
        int z = x; 
      } 
    } 
      
    int main() 
    { 
      std::cout << outer::inner::z; // 输出10 
      return 0; 
    } 
    

    C#

    嵌套的命名空间

    命名空间声明中声明命名空间,各命名空间用”.”分隔。

    例如:

    namespace N1.N2
    {
    class A {}
    class B {}
    }
    在语义上等效于
    namespace N1
    {
    namespace N2
    {
    class A {}
    class B {}
    }
    } 
    

    Java

    package cn.org.web3d.x3dpad
    

    Java中的命名空间意味着你只要拥有一个独立的顶级域名,就可以保证自己项目的绝对唯一性。

    Objective-C

    在Objective-C应用中的所有类名都必须是全局唯一的。命名一直是Objective-C的硬伤,和那些优雅的语言相比。苹果官方建议两个字母作为前缀的类名是为官方的库和框架准备的,而对于作为第三方开发者,官方建议使用3个或者更多的字母作为前缀去命名我们的类。

    PHP

    namespace VendorPackage.....
    

    它强调第一级Vendor就应该是唯一性标识,意味着你要拥有一个{Vendor}.com 的顶级域名,才可以保证自己项目的绝对唯一性。比如,当我想到这一点时,我立马去注册了一个meanir.com的域名来防身。

  • 相关阅读:
    无语的Filezilla
    服务无法启动集中帖
    FileZilla Server-Can’t access file错误解决方法
    CCNA2.0笔记_OSPF v3
    CCNA2.0笔记_OSPF v2
    <转>32位移植到64位 注意事项
    异步设备IO 《windows核心编程》第10章学习
    关于自己五年来做出的选择分析
    2015过年之前计划
    关于同一线程两次调用EnterCriticalSection的测试
  • 原文地址:https://www.cnblogs.com/x3d/p/namespace-with-domain.html
Copyright © 2011-2022 走看看