ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • 명품 C++ 7장 9번
    C++ 2018. 11. 3. 14:22

    9. 문제 8번의 Circle 객체의 다음 연산이 가능하도록 연산자를 구현하라.


    소스코드


    #include <iostream>
    using namespace std;
    class Circle {
        int radius;
    public:
        Circle(int radius = 0) { this->radius = radius; }
        void show() { cout << "radius = " << radius << " 인 원" << endl; }
        friend Circle operator+(int x, Circle op);
    };
    Circle operator+(int x, Circle op) {
        Circle tmp = op;
        tmp.radius= x + op.radius;
        return tmp;
    }
    int main() {
        Circle a(5), b(4);
        b = 1 + a; // b의 반지름을 a의 반지름에 1을 더한 것으로 변경
        a.show();
        b.show();
    }


    실행결과




    1이 객체가 아니기 때문에 friend 를 이용하여 외부함수로 구현해야합니다.


    'C++' 카테고리의 다른 글

    명품 C++ 7장 11번  (0) 2018.11.03
    명품 C++ 7장 10번  (0) 2018.11.03
    명품 C++ 7장 8번  (0) 2018.11.03
    명품 C++ 7장 7번  (0) 2018.11.03
    명품 C++ 7장 6번  (0) 2018.11.03

    댓글

© 2018 TISTORY. All rights reserved.