📜  C++ |构造函数|问题15

📅  最后修改于: 2021-05-25 21:31:35             🧑  作者: Mango

#include
using namespace std;
   
class Test
{
public:
  Test();
};
   
Test::Test()  {
    cout << " Constructor Called. ";
}
   
void fun() {
  static Test t1;
}
   
int main() {
    cout << " Before fun() called. ";
    fun();
    fun();
    cout << " After fun() called. ";  
    return 0;
}

(A)构造函数称为。在fun()调用之前。经过fun()调用。
(B)在调用fun()之前。构造函数称为。构造函数称为。经过fun()调用。
(C)在调用fun()之前。构造函数称为。经过fun()调用。
(D)构造函数被调用。构造函数称为。在fun()调用之后。在fun()调用之前。答案: (C)
说明:注意,在函数fun() ,变量t1声明为static 。因此, Test::Test构造函数在程序的生命周期内仅被调用一次。
有关更多信息,请参见C++中的静态关键字,并阅读“函数的静态变量”一节。这个问题的测验

想要从精选的最佳视频中学习和练习问题,请查看《基础知识到高级C的C基础课程》。