Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/jsp/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ 是否可以在块/函数范围中显示using声明?_C++ - Fatal编程技术网

C++ 是否可以在块/函数范围中显示using声明?

C++ 是否可以在块/函数范围中显示using声明?,c++,C++,我的问题差不多就是标题。 范例 #包括 int main() { 使用std::cout;//合法吗? { 使用std::cin;//合法吗? } } 是的,这是合法的。事实上,它比在文件范围内做更可取…为什么不测试它?它工作正常。 7.3.3使用声明 using声明在using声明出现的声明性区域中引入名称 而且,由于有人在评论中询问了关于使用名称空间的: 7.3.4使用指令 using指令不应出现在类范围内,但可以出现在命名空间范围或块范围内 没问题。反勾号无法在多行上格式化代码。多

我的问题差不多就是标题。 范例

#包括
int main()
{
使用std::cout;//合法吗?
{ 
使用std::cin;//合法吗?
}
}

是的,这是合法的。事实上,它比在文件范围内做更可取…

为什么不测试它?它工作正常。

  • 7.3.3使用声明
using声明在using声明出现的声明性区域中引入名称

而且,由于有人在评论中询问了关于使用名称空间的

  • 7.3.4使用指令
using指令不应出现在类范围内,但可以出现在命名空间范围或块范围内


没问题。反勾号无法在多行上格式化代码。多行代码块必须用4个空格缩进。s/iostream/iostream还不能编辑我自己。为什么要对这个问题投下否决票?@Daniel。不,不是。在我的编译器(MSVC9.0)上编译的很多东西都是不合法的。我不知道为什么我开始怀疑这一点,所以我在这里问。为什么不尝试使用它呢。在使用cin的范围内添加cin,同时在范围外添加cin(不带std::)。另外,你能给我一个非法编译的“例子”吗?很抱歉,我还没有听说过像文件作用域这样的东西,这同样适用于使用命名空间的
#include <iostream>

int main()
{
   using std::cout; //legal?
   { 
      using std::cin; //legal?
   }
}