填空题
下列程序的执行结果为______。
#include<iostream.h>
class Myclass
{
public:
void GetSum(int a);
static int Sum;
prtvate:
int A;
};
int Myclass::Sum=10;//必须在类外部对静态数据成员初始化
void Myclass::GetSum(int a)
{
A=a;
Sum+=A:
}
vold PrintSum(Myclass& A)
{
cout<<"Sum="<<A. Sum<<endl;
}
void main( )
{
Myclass M,N;
M.GetSum(3);
N.GetSum(7);
PrintSum(M);
}
【正确答案】
1、sum=20
【答案解析】[解析] 本题考察静态数据成员在同类的不同对象间的数据传递功能。Sum为所有对象的公共数据,M对象和N对象分别对sum进行累加,故结果为20。