C++入门,namespace关键字

用c++写一段"hello world"

#include <iostream>

using namespace std;

int main()
{
    
    
	printf("hello world\n");

	return 0;
}

namespace关键字

C++有namespace关键字的原因

namespace是对c语言的一个补充,在用C写大型项目需要多人合作的时候,很有可能会出现几个人定义的全局变量或函数出现命名冲突的情况,那这时就很难受了。而在C++的namespace这个关键字就很好的解决了这个问题。
再C++的。

namespace的定义

在上面代码中是将c++提供的标准命名std引入的,这样才能使用c++的关键字和库中的函数。std是++本身带的可以直接使用.
我们当然可以定义自己的命名空间比如这样:

namespace myName
{
    
    
	int a = 1;
	int b = 2;
	int c = 3;
}

还可以这样:

namespace myName
{
    
    
	//全局变量的定义
	int a = 1;
	int b = 2;
	int c = 3;

	//函数的声明
	int AddFunc(int x, int y);

	//函数的定义
	int SubFunc(int x, int y)
	{
    
    
		return x - y;
	}
}

这样:

namespace myName
{
    
    
	//全局变量的定义
	int a = 1;
	int b = 2;
	int c = 3;

	//函数的声明
	int AddFunc(int x, int y);

	//函数的定义
	int SubFunc(int x, int y)
	{
    
    
		return x - y;
	}

	//其它的命名空间的定义
	namespace otherName
	{
    
    
		int a;
		int b;
	}

}

namespace的使用

上面定义了我们自己的命名空间,要使用其中的成员的话有三种方式。
第一种

namespace myName
{
    
    
	int a = 1;
	int b = 2;
	int c = 3;
}

int main()
{
    
    
	//::是域作用限定符,这样可以访问myName中定义的变量
	printf("%d ", myName::a);

	return 0;
}

第二种

namespace myName
{
    
    
	int a = 1;
	int b = 2;
	int c = 3;
}

//将myName中的成员全局变量a引入,这样可以直接使用a
using myName::a;

int main()
{
    
    
	
	printf("%d ", a);

	return 0;
}

第三种

namespace myName
{
    
    
	int a = 1;
	int b = 2;
	int c = 3;
}

//将myName命名空间中的所有全局变量名或函数名都引入。所有成员都可以直接使用
using namespace myName;

int main()
{
    
    
	
	printf("%d ", a);
	printf("%d ", b);
	printf("%d ", c);

	return 0;
}

猜你喜欢

转载自blog.csdn.net/weixin_50168448/article/details/113481542