有如下程序: #inc1ude<iostream> using namespace std; c1ass Samp1e{ public: Samp1e(){} ~Samp1e(){cout<<’*’;}

admin2019-06-12  26

问题 有如下程序:
    #inc1ude<iostream>
    using namespace std;
    c1ass Samp1e{
    public:
    Samp1e(){}
    ~Samp1e(){cout<<’*’;}
    };
    int main(){
    Samp1e temp[2], *pTemp[2];
    retum 0;
    }
    执行这个程序输出星号(*)的个数为(    )。

选项 A、1
B、2
C、3
D、4

答案B

解析 在maln函数中,定义了Samp1e temp[2]的一个包含两个对象的数组,还定义了一个*pTemp[2],是包含两个指向类对象的指针的数组,故定义的指针当main函数结束后是不会调用析构函数的,只有包含两个对象的数组temp[2]会调用析构函数,因此只输出两个*。
转载请注明原文地址:https://kaotiyun.com/show/PL8p777K
0

最新回复(0)