慎重使用Get/Set成员函数(一)问题的提出
黄国强 2011-4-27
在类的设计中,应该尽量避免使用Get和Set这样的函数。具体见下面的例子代码:
class CSample
{
...
private:
int m_nVal;
public: // 以下两个函数尽量避免
int Get(void)const{return m_nVal;}
void Set(int nVal){m_nVal = nVal);}
...
};
这两个函数都很明显的暴露了内部的数据存储的形式和值,使面向对象形同虚设。从而使使很多原本封装到CSample类中的代码,放在其他不应该放的地方。