#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基础课程》。