标题:两个文件其中的namespace的含义 求解答
只看楼主
新人学习
Rank: 3Rank: 3
等 级:论坛游侠
威 望:1
帖 子:145
专家分:187
注 册:2017-10-26
结帖率:66.67%
 问题点数:0 回复次数:3 
两个文件其中的namespace的含义 求解答
//第一个文件
#include<iostream>
using namespace std;
void other();
void another();
int x = 10;
int y;

int main()
{
    cout << x << endl;
    {
        int x = 4;
        cout << x << endl;
        cout << y << endl;
    }
    other();
    another();

    system("pause");
    return 0;
}
void other()
{
    int y = 1;
    cout << "Other: " << x << ", " << y << endl;
}
//第二个文件
#include<iostream>
using namespace std;
extern int x;
namespace
{
    int y = -4;

}

void another()
{
    cout << "another(): " << x << ", " << y << endl;
}

//为什么最后一行输出Y的值是-4?namespace 起到了什么作用????

[此贴子已经被作者于2018-1-16 11:19编辑过]

搜索更多相关主题的帖子: 文件 namespace void int cout 
2018-01-16 11:17
yangfrancis
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:贵宾
威 望:141
帖 子:1510
专家分:7661
注 册:2014-5-19
得分:0 
输出-4确实有些奇怪,目测应该根本运行不起来的。
2018-01-16 22:14
rjsp
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:507
帖 子:8890
专家分:53117
注 册:2011-1-18
得分:0 
回复 2楼 yangfrancis
namespace
{
    int y = -4;
}
相当于C语言的
static int y = -4;
2018-01-16 22:47
yangfrancis
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:贵宾
威 望:141
帖 子:1510
专家分:7661
注 册:2014-5-19
得分:0 
原来这样。我还以为namespace后面一定要有个空间名称才行。
2018-01-18 12:23



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-484272-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.412003 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved