良好的类接口

最后更新于:2022-04-02 04:15:06

[TOC] ## 不要暴露成员数据 如: bad ``` float x; float y; float z; ``` good ``` float GetX(); float GetY(); float GetZ(); void SetX(float x); void SetY(float y); void SetZ(float z); ``` ## 避免把私用的实现细节放入类的接口中 bad: private 中的元素暴露了实现细节 ``` class Employee{ public: ... Employee(FullName name. String address,String workPhone,String homePhone TaxId taxIdNumber,JobClassification jobClas); FullName GetName() const; String GetAddress() const; ... private: String m_Name; String m_Address; int m_jobClass; ... } ``` good: 把类的接口和类的实现隔离开,并在类的声明中包含一个指针,让改指针指向类的实现,单不能包含任何其他实现细节 ``` class Employee{ public: ... Employee(...); FullName GetName() const; String GetAddress() const; ... private: EmployeeImplementation *m_implementation; ... } ``` ## 让阅读代码比编写代码更方便 阅读代码的次数要比编写代码多得多 因此,为了让编写代码更方便而降低代码的可读性是非常不经济的
';