: error C2248: 'GetPos' : cannot access protected member declared in class 'CMeter'
在别的类里面不能访问其他类的私有变量和保护变量,只能访问公有变量
你只需要吧
protected:
void SetPos(int nPos) { m_nPos = nPos; }
int GetPos() { return m_nPos; }
上面的protected:去掉就可以了
下面是去掉之后的运行结果
CMeter:20,CStick:10
CMeter:21,CStick:10
CMeter:21,CStick:11
11 12 Press any key to continue
你这个编译都编译不过吧。protect怎么能被外部调用呢?
CMeter 的GetPos是protect的,外部不能调用的。把protect去掉就可以了。
不知道楼主只是要编译过能运行就行吧?