“使用std::setw;包括范围解析运算符”的含义是什么 这在C++中意味着什么??它在编程中使用时?解释什么包括范围解析操作符。 < p>它带来了STD::SEtW商店;进入范围。 using std::setw;

“使用std::setw;包括范围解析运算符”的含义是什么 这在C++中意味着什么??它在编程中使用时?解释什么包括范围解析操作符。 < p>它带来了STD::SEtW商店;进入范围。 using std::setw;,c++,c++11,C++,C++11,当意外地将非限定setw应用于用户定义类型的值时,请注意ADL。setw在命名空间std中定义,如中所示 如果要使用它,可以使用std::prefix,或者像下面这样将名称空间包含到项目中 namespace std{ void setw(int) {..} }; 后者不是很好,因为它可能会导致与代码的命名冲突 edit:或如@rightfold所提到的那样+1因为使用namespace std的邪恶;::是范围解析运算符。 namespace std{ void setw(int)

当意外地将非限定setw应用于用户定义类型的值时,请注意ADL。

setw在命名空间std中定义,如中所示

如果要使用它,可以使用std::prefix,或者像下面这样将名称空间包含到项目中

namespace std{
  void setw(int) {..}
};
后者不是很好,因为它可能会导致与代码的命名冲突


edit:或如@rightfold所提到的那样

+1因为使用namespace std的邪恶;::是范围解析运算符。
namespace std{
  void setw(int) {..}
};
using namespace std;