|
다음의 연산자에 대한 연산자 중복함수를 작성하여 클래스를 설계하고 main함수의 실행 결과를 출력하시오.
대입(=), 증가(++), 감소(--)
단축(+=, %=, <<=)
증가, 감소 연산자는 객체의 멤버변수를 증가, 감소 시킨다.
선행, 후행연산이 모두 가능해야 한다.
단축 연산자
연산결과는 객체의 멤버변수에 저장한다.
각 연산 결과는 멤버변수에 저장 후 출력한다.
void main(){
OpOverloads obj1(1,2), obj2(3,4); //멤버변수: x, y
obj1++; ++obj2;
obj1=obj2;
cout << obj1.GetX() << “,” << obj1.GetY() <<endl;
cout << obj2.GetX() << “,” << obj2.GetY() <<endl;
- -obj1; obj2- -;
cout << obj2.GetX() << “,” << obj2.GetY() <<endl;
obj1+=obj2;
obj1<<=obj2;
obj1%=obj2;
cout << obj1.GetX() << “,” << obj1.GetY() <<endl;
cout << obj2.GetX() << “,” << obj2.GetY() <<endl;
}
증, 감연산자
선행: operator++() 함수호출
후행: operator++(int x) 함수호출
x는 0값을 갖는다.
멤버변수의 값을 증가, 감소 시킨다.
단축(+=, %=, <<=)
객체의 멤버변수값을 연산하여 LV(Left Value)에 저장한다.
과제인데;; 이건 이해자체가 안되서;; 건드리지도 못하고 있네요 ㅜㅡ..
|