Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
Tags
- python
- fuzzer
- 소설
- Hexeditor
- 부의본능
- iphone11
- 존엄하게산다는것
- 악성크도
- Git
- Error
- Cerbero
- YARA
- RX100
- msticpy
- protoc
- 아이폰11
- 처음이자마지막일듯
- 아이폰12
- 악성코드
- 독서
- 이런사람만나지마세요
- cannot find or open
- 복층루희네집
- CerberoSuite
- 신
- 인텔리전스
- 뚝썸유원지
- 베르나르
- 똑딱이졸업하는그날까지
- threatintelligence
Archives
- Today
- Total
qingfro9님의 블로그 입니다.
C++ 정적바인딩, 동적바인딩 예제 코드 본문
웹서비스로 빌드해서 결과를 보여주는 웹서비스가 있었다.!
- Coliru.stacked-crooked : http://coliru.stacked-crooked.com/
정적 바인딩 코드
#include <iostream>
class Shape{
public:
void draw(){
std::cout << "draw shape" << std::endl;
}
};
class Circle : public Shape{
public:
void draw(){
std::cout << "draw circle" << std::endl;
}
};
class Rectangle : public Shape{
public:
void draw(){
std::cout << "draw rectangle" << std::endl;
}
};
class Square : public Rectangle{
public:
void draw(){
std::cout << "draw square" << std::endl;
}
};
int main()
{
Square* sq = new Square;
Circle* cc = new Circle;
Rectangle* rect = new Rectangle;
Shape* ptr_shape;
std::cout <<"Static binding"<<std::endl;
cc->draw();
rect->draw();
sq->draw();
ptr_shape = cc;
ptr_shape->draw();
ptr_shape = rect;
ptr_shape->draw();
ptr_shape = sq;
ptr_shape->draw();
return 0;
}
동적 바인딩 코드
#include <iostream>
class Shape{
public:
virtual void draw(){
std::cout << "draw shape" << std::endl;
}
};
class Circle : public Shape{
public:
void draw(){
std::cout << "draw circle" << std::endl;
}
};
class Rectangle : public Shape{
public:
void draw(){
std::cout << "draw rectangle" << std::endl;
}
};
class Square : public Rectangle{
public:
void draw(){
std::cout << "draw square" << std::endl;
}
};
int main()
{
Square* sq = new Square;
Circle* cc = new Circle;
Rectangle* rect = new Rectangle;
Shape* ptr_shape;
std::cout <<"Dynamic binding"<<std::endl;
cc->draw();
rect->draw();
sq->draw();
ptr_shape = cc;
ptr_shape->draw();
ptr_shape = rect;
ptr_shape->draw();
ptr_shape = sq;
ptr_shape->draw();
return 0;
}
'개발언어' 카테고리의 다른 글
[Flask]0x01 기초부터! 이런거구나 싶었던 경험..; (0) | 2019.08.22 |
---|---|
pwntool 설치 로그 (0) | 2019.08.07 |
[python]pip 업데이트하다가 에러 날 때 해결 (0) | 2019.08.03 |
에이다(ADA) (0) | 2019.07.31 |
Comments