c++ - 没有声明的括号

标签 c++ codeblocks

我看到一些代码没有“if”或“for”或“do”之类的括号,只有注释。

像这样

//some comment

{

int a=5;

//and more code

}

这是什么?

注意:我注意到在使用我的 IDE (code::blocks) 时,它的左侧有一个“-”,当您单击它时,它会隐藏括号中的所有代码。这是没有声明的唯一括号用法吗?

最佳答案

这是一个范围。它限制了在其中声明的任何变量的生命周期。对于用户定义的类型,这意味着在退出范围之前调用析构函数。

例如:

#include <iostream>
struct Foo
{
  ~Foo() { std::cout << "Foo destructor\n";  }
};

int main()
{
  std::cout << "before scope \n";

  {
    Foo f;
  }
  std::cout << "after scope\n";

}

关于c++ - 没有声明的括号,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23044309/

相关文章:

C++ 观察者模式 : adding another dimension

c++ - fopen64/fseeko64 和 c++ 11

c++ - 在 windows(W32) 上安装 opencv 以与代码块一起使用

c++ - 在 C++ 中寻找吃得最少的人

c++ - 无法找到 -libmysql 或 undefinder 引用 -mysqllib 和 mysql 库

c++ - Eclipse C/C++ 控制台行为异常

c++ - C++ 函数默认参数的位置

c++ - FLV & F4V开源C++解码器

C++ 结构 : reference to overloaded function could not be resolved

c - parking 收费计划