能正确写出下面代码的输出内容吗?
正确的输出信息是:
+ D // 全局对像d初始化
+ A // 函数内局部对像a初始化
+ B // 函数内局部对像b初始化
- B // 函数内局部对像b删除.以前一直以为给一条代码无故加对花括号是无聊的,或者编译器会把它干掉,无聊吗?
+ C // 函数内静态对像c初始化.注意局部静态变量虽然生存周期是整个程序,但“启动生命”是第一次访问时.这有别于全局对像在main函数启动前就被初始化。
- A // 函数内局部对像a删除
+ A
+ B
- B // c对像已经初始化过了,所以下面不会再初始化c
- A
Goodbye!
- C // 函数内的静态变量c被删除
- D // 全局对像d被删除