1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

#include <iostream>

#include <string>

using namespace std;

 

class Point {

    int x, y;

public:

    Point(int x, int y) { this->x = x; this->y = y; }

    int getx() { return x; }

    int gety() { return y; }

protected:

    void move(int x, int y) { this->x = x; this->y = y; }

};

 

class ColorPoint : public Point {

    string color;

public:

    ColorPoint(int x=0, int y=0, string color="BLACK") :Point(x, y) {        // default 기본생성자 생성

        this->color = color;

    }

    void setPoint(int x, int y) {

        this->move(x, y);            // Point 에서 move 가 protected 니까 ColorPoint 에서도 접근 가능함

    }

    void setColor(string color) {

        this->color = color;

    }

    void show() {

        cout << this->color << "색으로 (" << this->getx()<<","<< this->gety()<< ")" << "에 위치한 점입니다."<<endl;

    }

};

int main() {

    ColorPoint zeroPoint;

    zeroPoint.show();

 

    ColorPoint cp(5, 5);

    cp.setPoint(10, 20);

    cp.setColor("BLUE");

    cp.show();

}

Colored by Color Scripter

cs

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

명품 c++ 7장 실습문제 2번  (0) 2019.06.05
명품 c++ 7장 실습문제 1번(2)  (0) 2019.06.05
명품 c++ 7장 실습문제 1번(1)  (0) 2019.06.05
명품 C++ 8장 실습문제 3번  (0) 2019.06.01
명품 C++ 8장 실습문제 1~2번  (0) 2019.06.01

+ Recent posts