问题
单项选择题
若有以下程序:
#include 〈iostream〉
using namespace std;
class sample
private:
int i;
public:
void setvalue(int m)
i=m;
void fun(int m)
i+=m;
void disp()
cout〈〈i〈〈end1;
;
int main()
sample *ps;
ps=new sample;
ps->setvalue(20);
ps->fun(5);
ps->disp();
return 0;
程序运行后,输出的结果是( )。
A.15
B.20
C.25
D.30
答案
参考答案:C
解析: 本题考核对象指针的应用。程序首先定义了一个类sample,其中包含一个私有成员i和3个公有成员函数。函数setvalue()的功能是给私有成员i赋值,函数fun()的功能是将私有成员i的值增加m,函数disp的功能是输出变量i的值。在主函数中,先定义了类sample的一个耐象指针ps,并申请了一块内存空间。执行
语句ps->setvalue(20);后,类中i的值为20,执行语句“ps->fun(5);”后,类中i的值为25。所以程序最后输出25。