C/C++教程

C++中的命名空间

本文主要是介绍C++中的命名空间,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

在C++中通过命名空间来避免命名冲突

类似java中包的概念来解决函数名冲突问题

namespace MQ
{
    int g_variable;

    class Person{

    };

    void test() {
        
    }
    
} 

int main(){

    MQ::g_variable = 10;
    MQ::Person *p = new MQ::Person();
    MQ::test();
    return 0;
}

//如果不想写MQ::,可以在头使用命名空间,但是当using多个命名空间后,在使用的时候需要指定使用哪个命名空间
using namespace MQ;

命名空间的嵌套

namespace MQ
{
    int g_variable;

    class Person{

    };

    void test() {
        
    }

    namespace Other{
        void test();
    }
    
} 

int main(){
    //使用test
    MQ::Other::test();
    return 0;
}

命名空间的合并

namespace MQ
{
    void run();
} 

namespace MQ
{
    int g_variable;
} 

//上面2个分开写和下面这样写没区别
namespace MQ
{
    int g_variable;
    void run();
} 
这篇关于C++中的命名空间的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!