일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- dataginding
- Realm
- quick-start
- C
- bigquery
- kotlin
- 안드로이드
- Android
- fabic
- Hyperledger
- fabric-sdk-java
- ethereum
- vuepress
- Exception
- Glide
- hardwareacceleration
- coroutines
- web3js
- test
- porterduff
- LAYER_TYPE_SOFTWARE
- Gradle
- 스트리밍
- 다윈
- null safety
- firebase
- error
- convert
- 컴파일
- log
- Today
- Total
날마다 새롭게 또 날마다 새롭게
부모 클래스의 포인터는 자식 클래스를 가리킬 수 있으나 자식 클래스의 멤버에는 접근하지 못한다. 다음과 같이 부모 클래스 포인터가 자식 클래스를 가리키고 있을 때를 살펴보자.먼저 First MyFunc;tptr->MyFunc; 결과가 어떻게 되겠는가? 부모 클래스는 자식 클래스를 가리킬 수는 있으나 자식 클래스 멤버를 사용하지는 못하므로, C++ 컴파일러는 실제 가리키는 객체의 자료형을 기준으로 하지 않고 포인터의 자료형을 기준으로 하여 함수를 호출하게 된다. 그러므로 결과는 다음과 같다.FirstFuncSecondFuncThirdFunc 그렇다면 포인터의 자료형이 아닌 실제 가리키는 객체의 자료형을 기준으로 함수 호출은 어떻게 할 수 있는가? 바로 가상함수(Virtual Function)을 이용하면 포..
함수 오버로딩전달 인자가 다르고 동일한 이름의 함수 정의를 함수 오버로딩이라고 한다.int MyFunc(int num)int MyFunc(int a, int b)함수 호출 시, 전달되는 인자에 따라 함수를 구분할 수 있다. 함수 오버라이딩부모 클래스와 유도 클래스에 동일한 이름의 함수 정의를 함수 오버라이딩이라고 한다.int Paren::GetPay() const;int Derived::GetPay() const;함수가 오버라이딩 되면, 오버라이딩 된 부모 클래스의 함수는 유도 클래스의 함수에 가려진다.
상속은 부모님으로부터 어떤 대상을 물려받는 것을 말한다. 클래스 상속도 원래 상속이 갖고 있는 의미와 마찬가지로 부모 클래스가 가지고 있는 것을 자식 클래스에게 물려주는 것을 말한다. 다시 정리하면,A 클래스가 B 클래스를 상속한다.라는 말은 A 클래스는 B 클래스의 모든 멤버를 물려받았다 라는 것을 의미한다. 상속에 대한 정의는 다음과 같이 한다. "class A : public B{ .... }" 주의사항.. A 클래스가 B 클래스를 상속하기 위해서는 B 클래스가 먼저 생성되어 있어야 한다...... 닭이 먼저냐 달걀이 먼저냐..... 그렇다면 이 상속은 왜 필요한가? 상속을 통해서 부모가 가진 특성들을 그대로 갖고 있는 여러 자식 클래스들을 만들어 사용할 수 있다는 장점이 있다. 예를 들어, S 클..