C++

[C++] 명품 C++ 프로그래밍 실습문제 8장 4번

Hs’s Coding vlog 2023. 1. 13. 16:38

[C++]명품 C++ 프로그래밍 실습문제 8장 4번

[C++]명품 C++ programming 실습문제 8장 4번

명품 C++ 프로그래밍실습문제/연습문제 /C++

#include <iostream>
#include <string>
#include <ctime>
#include <cstdlib>
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){ //파생클래스 생성자에서 원시클래스 생성자까지
        //매개변수를 전달하고 싶다면  : 원시클래스 (매개변수) 를 적어줘야지 원시클래스를 쓸수가 있다.
        this->color = color;
    }
    
    void setpoint(int x, int y){
        
        this->move(x,y);
    }
    
    void setColor(string color){
        this->color = color;
    }
    
    string GetColor(){
        return this->color;
    }
    
    void show(){
        cout << this->GetColor() << "색으로 " << '('<<this->getX()<<',' << this->getY() << ')' << "에 위치한 점입니다." <<endl;
        
    }
};

int main() {
    Colorpoint zeroPoint;
    zeroPoint.show();
    
    Colorpoint cp(5,5);
    cp.setpoint(10,10);
    cp.setColor("BLUE");
    cp.show();
    
    
    return 0;
}