C++命名空间学习和练习案例

namespace(命名空间)

作用

1.作用
跟C语言中static作用类似,防止在开发大型应用程序,名字起冲突
大型应用程序开发的时候,不同的.cpp文件可以是不同的程序员写的,有可能会出现全局变量同名导致的冲突
C++采用了如下解决方案:
方案一: 跟C语言一样,用static限制全局变量的作用域
方案二: 使用命名空间

语法规则

2.语法规则
namespace 命名空间的名字
{
需要包含的内容(变量,函数,类)
};

使用命名空间

3.使用命名空间
写法一:
命名空间的名字::变量名;
命名空间的名字::函数名;
命名空间的名字::类名;
写法二:
using namespace 命名空间的名字; //声明我要使用的命名空间
使用的时候就可以不必写命名空间的名字::

认识std

4.认识std

using namespace std;  //声明我要使用系统定义好的命名空间std
                 #include <iostream> 头文件中定义命名空间
                 namespace std
                 {
                      cin;
                      cout;
                      endl;
                }

在main.cpp文件中定一个命名空间
namespace T
{
int a=10086;
}

在另一个文件中pf.cpp声明命名空间,并且说明a是外部变量
namespace T
{
extern int a;//声明命名空间中的a是在外部定义的
}

简单练习

在main.cpp中定义一个命名空间,里面有func()函数,在另一个文件中实现该空间的func函数,并输出一句话。

在pf.cpp实现func函数

#include <iostream>
using namespace std;

//定义命名空间
namespace T
{
	void func()
	{
	   cout << "Hello World!" << endl;
	}
}

在主函数通过namespace调用另一个文件的func()

#include <iostream>
using namespace std;

//定义命名空间
namespace T
{
	extern void func();		//说明这个函数在外部定义的
}

int main()
{
	//使用命名空间
	T::func();
	return 0;
}

实现效果:
在这里插入图片描述

  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

程序小鹿

博主不差钱,点个赞就行哈哈

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值