自我总结初级程序员易错问题1—命令空间使用

自从本科第一次学习语言开始,教科书上基本上都教导的是直接使用using namespace 导入命令空间,从而导致目前许多未正式参与过大型项目的程序员,在使用C++的过程中养成了普遍性最常见的程序员编程错误,那就是一开始写代码,前几句就写上了using namespace std;之类的语句,甚至在各种头文件中也这样使用。这样的方式确实可以不用繁琐的添加std等各种标准库名,然而今天通过书籍才发现这样随意的使用命名空间却容易在某些时候产生一些难易发现的错误。比如在大型项目中,当某个同事编写了一个自定义类型与某个已有命名重复时可能就会产生错误。

故该书籍推荐尽量不要在全局作用域中使用using,若你依然想避免繁琐的使用各种标准库名,则可以使用以下推荐的方式:

1.尽量将需要使用的名空间引入在局部作用域中,例如某个需要的头文件函数中,

void fun(){
using namespace std;
//……
}
2.为需要使用的冗长的命令空间定义别名

std::map<std::string, long> client;  
typedef std::map<std::string, long> ClientName;  
ClientName client;  
//或者使用
namespace s=std:map;


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值