#include <iostream>
using namespace std;
class armon {
int a;
int b;
public:
armon(int newA, int newB) : a(newA), b(newB) {}
armon setA(int newA) {
a = newA;
return *this;
}
armon setB(int newB) {
b = newB;
return *this;
}
void print(void) { cout << a << endl << b; }
};
int main() {
armon s(3, 5);
s.setA(8).setB(9);
s.print();
}
- 왜 난 그냥 계단식 함수 호출을 할 수있는이 포인터 객체를 반환 할 수 있습니까?
- 왜 개체의 참조를 반환해야합니까?
- 그게 뭐라해도 될까요?
'setA'와'setB'에서'armon &'을 돌려주는 것이 더 낫습니다. – NetVipeC
좋습니다.하지만 –
은 참조를 반환하지 않고 다음 호출이 클래스의 내부 상태를 수정하기 때문에 수정 사항이 원래 개체에 유지되지 않기 때문입니다. '참조없이'당신은 객체의 복사본을 반환하고, '참조는 같은 객체를 반환합니다.' – NetVipeC