在哪里放置使用声明

时间:2012-01-13 15:43:48

标签: c++

有关using声明的建议做法是什么(例如using std::vector;)?

它应该位于cpp / cc文件的顶部还是仅在使用它的范围内?

4 个答案:

答案 0 :(得分:2)

限制其范围通常会更好,但是在源文件中需要一些非常重要的代码才能在实践中发挥作用。

答案 1 :(得分:2)

Sutter和Alexandrescu编写的C ++编码标准第59章命名为“不要在头文件中或在#include之前编写命名空间”。所以他们说你不应该在#include指令之前使用声明或using指令编​​写,因为这可能会影响#included代码。这也意味着你不应该在你自己的头文件中使用,因为有人可能会#include他们,这会改变包含点的行为(参见例如一些Boost头库)。

所以不要在头文件和#include指令之前使用。在#including指令之后,随意在实现文件中使用。

答案 2 :(得分:0)

如果它在cpp文件中,那就是风格问题。有些人倾向于一起避免using声明,以避免任何歧义。如果在标题中,始终至少在某个范围内使用它,否则坚持变量规则:始终尽量使事物在最小的范围内。

答案 3 :(得分:0)

为了便于阅读,最好在开头使用它。 否则,请在尽可能小的范围内使用它。

为了使代码更清晰,您应该避免使用using

<强>更新

请考虑mezhaka的评论。我不够精确,但是在“开头”到“真实”代码的开头,即#includes之后