일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- DP
- 언어의 온도
- 이분탐색
- 창훈쓰다
- 외판원 순회
- yolo
- Segment Tree
- 인간이 그리는 무늬
- 삼성 코딩테스트
- 영어회화 100일의 기적
- 그리디 알고리즘
- 다음 지도 api
- upper_bound
- 생활코딩
- 평창동계올림픽
- multiset
- BOJ 2098
- 성화봉송
- 캘리그라피
- 다음 API
- boj
- 비트마스크
- 안드로이드 스튜디오
- 백트레킹
- MST
- 성화봉송주자
- BFS
- 위상정렬
- lower_bound
- 다이나믹 프로그래밍
- Today
- Total
Hoon222y
123456789101112131415161718192021222324public class inheritanceTest { public static void main(String[] args) { Medic medic = new Medic(); Marine marine = new Marine(); // marine = medic //는 에러, 서로다른 타입이기 때문에 Human h1 = medic; //부모타입 = 자식 객체, 업케스팅(upcasting) Human h2 = marine; // 관련이 없는 타입은 처리할 수 없으므로 타입안정성이 높아지게 된다. // Human h3 = new Hydra(); // 상속을 사용하는 이유 // 기능적 : 코드의 재사용성 // 디자인 : 서로 다른 타입을 동..
상속 : 기존 클래스를 재사용하여 새로운 클래스를 작성하는 것을 의미한다. 상속을 하는 주체를 부모 클래스하고 하고, 상속을 받는 주체를 자식클래스 라고 한다. 이때 상속되지 않는것은 : 생성자, 소멸자 , 대입연산자 , 정적멤버, friend 함수이다. 상속을 하려면 class 클래스명 : public 클래스명 으로 사용한다. 그렇다면 상속에서 생성자와 소멸자는 어떻게 작동하는지 알아보자. 123456789101112131415161718#include using namespace std; //상속 관계에서 생성자와 소멸자의 호출 순서//자식 생성자-> 부모 생성자 -> 자식 생성자 -> 자식 소멸자 -> 부모 소멸자class Parent{public: Parent(){ cout
1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768//rule of 3//1. 복사 생성자 2. 소멸자 3. 대입연산자//대입 연산자 오버로딩 #include using namespace std; class Person{ char *name; int age;public: Person() :name(0), age(0){} Person(const char * n, int a) : age(a){ name = new char[strlen(n) + 1]; strcpy(name, n); } //만약 클래스 내부에서 동적 할당된 자원이 있다면..
12345678910111213141516171819202122232425262728293031323334353637383940414243444546//첨자 연산자 오버로딩#include using namespace std; class IntArray{ int* buf; int size;public: IntArray(int sz = 10): size(sz){ buf = new int[size]; } int length() const{ return size; } //아래의 코드가 동작될 수 있도록 함수를 변경하라.(리턴 타입을 int에서 int&로 바꿈) //첨자 연산자를 반환할 때는 참조 타입을 반환해야 하는데 그 이우는 값의 대입(=) 때문이다. int& operator[](int idx){ //이 함..