zoukankan      html  css  js  c++  java
  • C++语言-08-命名空间

    概述

    命名空间通常作为附加信息来区分不同库中相同名称的函数、类、变量。命名空间的本质是定义一个范围,该范围即为一个上下文,一个上下文中通常不允许出现相同名称的函数、类、变量。
    

    定义

    • 定义格式

      • 普通的命名空间

        namespace namespace_name {
        	VariableType variable;
        	ReturnType funciton(ParameterType parameter) {
        		return result;
        	}
        }
        
      • 嵌套的命名空间

        namespace namespace_name {
        	VariableType variable;
        	ReturnType funciton(ParameterType parameter) {
        		return result;
        	}
        	namespace subNamespce_name {
        		VariableType subVariable;
        		ReturnType subFunciton(ParameterType parameter) {
        			return result;
        		}
        	}
        }
        
    • 命名空间中函数或变量的调用

      // 使用范围解析运算符调用命名空间中的函数或变量
      namespace_name::variable;
      namespace_name::funciton(parameter);
      namespace_name::subNamespce_name::subVariable;
      

    using namespace 指令

    • 使用 using namespace 指令来简化指定命名空间中函数或变量的调用
      • 指定一个命名空间

        using namespace namespace_name;
        function(parameter);
        
      • 指定一个命名空间中的一个函数或变量

        using namespace_name::function();
        function(parameter);
        // 未指定的变量,需要使用命名空间名字加上范围解析符访问
        namespace_name::variable;
        
    • using 指令的作用域
      • 从 using 指令开始,到该范围结束

    示例

    • 定义命名空间

      	namespace testSpace {
          int variable;
          void function() {
              cout << "testSpace" << endl;
          }
          // 嵌套的命名空间
          namespace subTestSpace {
              void function() {
                  cout << "subTestSpace" << endl;
              }
          }
      }
      
    • main函数

      int main(int argc, const char * argv[]) {
          testSpace::function();
          testSpace::subTestSpace::function();
          return 0;
      }
      
  • 相关阅读:
    Jquery开发技巧汇总
    (转)
    C#中的委托和时间
    asp.net中like 使用参数化(转)
    省市选择
    安卓对话框
    z转自 西西吹雪
    winform控件验证技术(转)
    C#获取网卡Mac地址 .(转)
    关于GDI+错误的修正
  • 原文地址:https://www.cnblogs.com/theDesertIslandOutOfTheWorld/p/5238783.html
Copyright © 2011-2022 走看看