我在C ++中使用'using'声明将std :: string和std :: vector添加到本地名称空间(以节省键入不必要的'std ::'s)。
using std::string;
using std::vector;
class Foo { /*...*/ };
该声明的范围是什么?如果我在标头中执行此操作,是否会将这些“使用”声明注入每个包含标头的cpp文件中?
using
声明(更不用说指令)的头在所有,即使是在一个命名空间!有关此问题的信息,请参见在命名空间中使用声明的范围。
using
类和功能范围有关讨论的问题是安全。
using
声明(或using
指令)!这将使标题用户感到头疼。