微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

c – 我应该包括一个已经通过其他标头包含的标题吗?

我只是注意到我的程序使用字符串类编译而不包括< string>头.原来,< iostream>包括< ios_base>其又包括< string>.

这是不好的做法,我应该明确地包括< string>?即使只是一个清晰的例子?

假设这适用于不仅仅是< string>头?也许这是具体的实现,或者标准状态为< string>标题通过< ios_base>和< iostream>?确保任何受人尊重和广泛使用的实施将始终包括< string>向< iostream>提供呼叫存在.

解决方法

您应该明确地包含所需的任何标准库头.

没有指定其他标准库头文件包含哪些标准库头文件,因此这些细节在编译器之间不同.

一个可以依靠另一个标题包含的标题的情况是,一个标题中的一个类来源于另一个标题中的一个类.例如,< iostream>必须包含< ios_base>因为< iostream>中定义的类别来自< ios_base>中定义的类.

原文地址:https://www.jb51.cc/c/111617.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐