Overriding
C# 부모 클래스 함수 호출과 오버라이딩 (base / override)
개념 부모 클래스 내 함수를 자식 클래스 재정의 하는 것이며 C++하곤 살짝 다른 개념이다 기본적으로 룰이 존재하는데. 1. 절대로 private이면 안된다. 2. C++과 다르게 같은 함수명을 적어도 컴파일러는 알아채질 못한다. using System; using System.Collections.Generic; using System.Runtime.InteropServices; namespace ConsoleApplication1 { public class Parent { int mVal = 0; public int ValProp { get { return mVal; } set { mVal = value; } } public Parent() { this.mVal = 10; Console.WriteLi..
C++ 부모 클래스 함수 호출과 오버라이딩 (override)
오버라이딩 핵심 개념 오버라이딩은 부모 클래스에서 정의한걸 재정의 하는 것이다. 추상클래스 (순수 가상 함수) 참조 아래와 같이 부모 클래스에선 virtual 키워드를 붙여준 뒤 함수를 정의하고 자식 클래스에서 재정의 하는 것이다. virtual로 시작 (생략 가능) 그리고 마지막엔 override 붙일 수가 있다. (이것 또한 생략 가능) #include using namespace std; class Parent { int mVal = 0; public: virtual void Fn1() { } virtual void Fn2() { } virtual void Fn3() { } virtual void Fn4() = 0; }; class Child : public Parent { public: void ..