namespace 命名空间


对于namespace 的使用一般只在比较大的项目开发中。。

能为各个不同程序员的代码共同实施提供极大的方便,因为不同程序员员可能使用了相同的变量,namespace便能够避免这种错误的出现。


当有相同的全局变量和局部变量时,若需直接访问全局变量只需使用    ::变量名


#include <iostream>

using namespace std;

int s=55;
int main()
{
    int s=5;
    std::cout<<::s<<endl;//55
    cout<<s<<endl;//5
}



#include <iostream>

using namespace std;

int v=5;//强龙不压地头蛇

int main1()
{
    int v=55;
    cout << v << endl;//如果有相同全局和局部变量,使用的话还是会调用局部 输出55
    return 0;
}

int main2()
{
    //需要访问全局的话
    int *p=&v;//全局
    int v=55;//局部
    cout<<*p<<endl<<v;//输出5 55
}
</pre><pre code_snippet_id="1970891" snippet_file_name="blog_20161107_10_4204878" name="code" class="cpp">
int main3()
{
    int v=55;
    cout<<v<<endl;

    cout<<::v<<endl;//::作用域运算符,全局无命名空间  直接输出全局变量5
    return 0;
}
</pre><pre code_snippet_id="1970891" snippet_file_name="blog_20161107_10_4204878" name="code" class="cpp">
</pre><pre code_snippet_id="1970891" snippet_file_name="blog_20161107_8_3921471" name="code" class="cpp"><pre name="code" class="cpp">//关键字namespace  自定义函数名Space
namespace Space{
    int x;
    int y;
}

namespace Other {
    int x;
    int y;
}

int main4()
{
    Space::x=200;
    cout<<Space::x<<endl;//较方便的表达方式  输出200

    using Space::y;//未初始化的写法
    y=20;
    cout<<y<<endl;//输出20


}
<pre name="code" class="cpp">int main()
{
        {
            using namespace Space;
            x=10;y=20;
            cout<<x<<" "<<y<<endl; //10 20
        }
        //这里的花括号是为了防止上面的x,y和下面的冲突
        {
            using namespace Other;
            x=10;y=20;
            cout<<x<<" "<<y<<endl; //10 20
        }

 //       int x;int y;
  //      cout<<x<<y<<endl;
}


 

 
 
 



  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值