• 목록
  • 아래로
  • 위로
  • 쓰기
  • 검색

C언어 도형의 상속구조

너에게제공 너에게제공
462 0 0
#include <iostream>
#include <string>
using namespace std;
class Shape 
{
  protected:
    int x, y; 
  public:
    Shape(int x=0, int y=0) { this->x=x, this->y=y; } 
    void setOrigin(int x, int y) { this->x=x, this->y=y;}
    void draw() { cout<<"Shape draw"<<endl; }
    void printPosition() { cout<<" x : "<<x<<" y : "<<y<<endl; }
};

class Rectangle : public Shape 
{
private: 
        int width, height;
public: 
    Rectangle (int x=0, int y=0, int w=5, int h=10) : Shape(x,y)
        {width=w; height=h;}
        void setWidth(int w){width=w;}
    void setHeight(int h) { height=h; }
    void draw() { cout<<"Rectange draw"<<endl; }
    void printPosition() {Shape :: printPosition();  cout<<"width : "<<width<<" height : "<<height<<endl;}
};

int main() 
{
    Rectangle *pr = new Rectangle(); // 동적으로 객체 생성 
        
        

    pr->printPosition();      // 정보 출력
    pr->setOrigin(10,10);  // x를 10, y를 10으로 변경
    pr->printPosition();   // 정보 출력
    pr->setWidth(100);  // width를 100으로 변경
    pr->setHeight(200);  // height를 200으로 변경
    pr->printPosition();  // 정보 출력

    delete pr;
}
신고공유스크랩

댓글 0

댓글 쓰기
권한이 없습니다. 로그인
에디터 모드

신고

"님의 댓글"

이 댓글을 신고하시겠습니까?

댓글 삭제

"님의 댓글"

이 댓글을 삭제하시겠습니까?

공유

퍼머링크