• C++ 学习 之 名字空间 namespace


    在这里插入图片描述
    在这里插入图片描述
    必须在模块里面 extern 声明

    在这里插入图片描述
    在一个 cpp 文件中, 一个namespace 可以多次定义,最后合并,使用 using namespace A 这种引入方式的话,使用的时候可以用所有 A 中的数据
    多个 cpp 文件的话,不能会自动合并相同的 名字空间,(但是匿名的名字空间不会合并)所以不能重复定义

    namespace A {
        int a = 0;
        void fun();
    }
    
    using  A::a;
    
    namespace A {
        int b = 1;
    }
    
    int main()
    {
       std:: cout << b <
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15

    如果是上面的写法的话,不能使用没有引入的名字空间里面的变量和函数
    改成下面的就是对的

    namespace A {
        int a = 0;
        void fun();
    }
    
    using  A::a;
    
    namespace A {
        int b = 1;
    }
    using A::b;
    
    int main()
    {
       std:: cout << b <
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16

    在这里插入图片描述

    namespace A {
        int a = 0;
        void fun();
    }
    
    using namespace A;
    int a = 1;
    
    int main()
    {
       std:: cout << a <

要注意的是上面的情况,使用的时候要说明是调用哪一个

  • 相关阅读:
    FPGA:基础入门LED灯闪烁
    ubuntu 安装腾达U9 无线网卡 驱动-纯搬运-实测有效
    黑豹程序员-架构师学习路线图-百科:JSON替代XML
    Maven项目转为SpringBoot项目
    “大数据分析师”来了,提高职业含金量,欢迎来领
    设计模式——建造者模式(生成器模式)
    CSB ---> (XXE)XML基础
    工具类xxxUtil从application.properties中读取参数
    linux 输出重定向
    4.springboot中整合Mybatis
  • 原文地址:https://blog.csdn.net/wniuniu_/article/details/133998948