c++静态函数和静态成员

#include

class Sample

{

int A;

static int B;

public:

Sample(int a){A=a,B+=a;}

static void func(Sample s);

};

void Sample::func(Sample s)

{

cout<<"A="<<s.A<<",B="<<B<<endl;

}

int Sample::B=0;

void main()

{

Sample s1(2),s2(5);

Sample::func(s1);

Sample::func(s2);

}
这串代码输出的是2,7和5,7,有人知道为什么B的值一直是两个对象参数的和嘛

单步类的实例“构造”或“复制”或“作为函数参数”或“作为函数返回值返回”或“参加各种运算”或“退出作用域”的语句对应的汇编代码几步后,就会来到该类的“构造函数”或“复制构造函数”或“运算符重载”或“析构函数”对应的C/C++源代码处。