命名空间问题using name space

来源:互联网 发布:软件测试月薪 编辑:程序博客网 时间:2024/04/29 19:05
 
namespace用法
2007年04月27日 星期五 18:30

关键字namespace定义了一个名字空间,里面的变量和函数,声明在此名字空间外使用须在前面加名字空间名称.例如:

#include<iostream.h>
namespace my
{
int a=3;
}
class test
{
public:
int a;
test(){a=1;}
void fb()
{
int a=0;
cout<<(my::a)<<(test::a)<<a;
}
};
int main()
{
test t;
t.fb();
return 0;
}

类名也可以做为此类的名字空间来使用,如要访问此类的成员(函数或变量)可用类名:成员名来实现,但要注意一些实例化问题,如:非静态成员不能在类外用类名:成员名来实现,如上面的例子中main函数换成

int main()
{
test::fb();
return 0;
}

提示报错.因为没有一个实例,也就是对象来调用这个函数.