한다고 가정 우리가이 조건에 : 나는 데이터 멤버에 접근 할 필요가C++ 개인 데이터 멤버 액세스 : 모범 사례
class C {
int a, b;
public:
C(int aa, int bb) {
setA(aa);
setB(bb);
}
void setA(int aa) { a = aa; }
int getA() { return a; }
void setB(int bb) { b = bb; }
int getB() { return b; }
C add(const C c1, const C c2);
};
add()
의 경우, 그것을 할 수있는 가장 좋은 방법은 무엇입니까? 나는 클래스 디자이너이기 때문에 액세스 함수 set
과 get
(클라이언트 프로그래머 용으로 생성)을 사용하거나 단순히 데이터 멤버 (c1.a
, c1.b
, c2.a
, c2.b
)를 사용할 수 있습니까?
'가상'을'추가 '할 계획이십니까? –
생성자에 set 함수를 호출 할 필요가 없습니다. 'a = aa'와'b = bb'을 직접 설정하십시오. – tianz
@ Koushik So. 그가하는 일에는 불법이 없습니다. (3 개의 인수를 취하는'add' 함수 나'const'가 무시되는 문맥에서의'const C'와 같은 의심스러운 몇가지 문제가 있습니다. 또는 모든 멤버들에 대한 getter와 setter를 갖는 것 .) –