首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ >

关于名字空间的一个有关问题

2012-02-22 
关于名字空间的一个问题a.hppnamespacea{void fun() {}}b.cppnamespaceb{}我现在想在b里使用a名字空间的函

关于名字空间的一个问题
a.hpp

namespace a
{
void fun() {}
}


b.cpp
namespace b
{
 
}

我现在想在b里使用a名字空间的函数,该怎么使用啊 


我在b中包含a的头文件,也没用 

例如 

b.cpp
#include "a.h"
using namespace a;

namespace b
{
 
}




紧急,在线等


[解决办法]
使用时加::标示符.
如调用函数fun时采用:
a::fun();

[解决办法]
// out2.cpp

#include "out.h"

#include <iostream>

// using namespace Outer; // 编译错误,因为变量i和函数f()有名称冲突

using namespace Outer::Inner;

using namespace std;

int main ( ) {

Outer::i = 0;

Outer::f(); // Outer::i = -1;

f(); // Inner::f(),Outer::i = 0;

i = 0; // Inner::i

g(); // Inner::g(),Inner::i = 1;

h(); // Inner::h(),Inner::i = 0;

cout << "Hello, World!" << endl;

cout << "Outer::i = " << Outer::i << ", Inner::i = " << i << endl;

}


参考一下用法,学一下怎么使用::全局符。运行看一下结果就应该知道是怎么回事了

热点排行