전체 글 (71) 썸네일형 리스트형 C++ 가상 함수(Virtual function) 가상 함수 가상 함수는 상속받은 기본 클래스의 함수를 파생 클래스에서 다시 정의할 때 사용한다. 기본 클래스에 정의된 함수를 사용하지 않고, 같은 이름의 함수를 다시 정의하는 것이다. 이러한 가상 함수를 사용하는 이유는 객체의 다형성을 지원하기 위해서이다. 가상 함수를 정의하려면 앞에 virtual이라고 표기해야 한다. 자세한 내용은 아래 예제에서 참고할 수 있다. 예제 #include using namespace std; class POINT { private: int sx, sy; public: POINT(int a, int b) { sx = a; sy = b; } virtual void PutData()// 가상함수 { cout C++ 클래스 다중 상속 다중 상속 다중 상속에는 2가지 경우가 있다. 하나는 이미 상속받은 파생 클래스를 기본 클래스로 하여 또다시 상속하는 경우와 2개 이상의 기본 클래스를 상속받아 파생 클래스를 정의하는 경우가 있다. 이러한 다중 상속을 통하여 클래스를 매우 다양하게 만들 수 있다. 자세한 내용은 아래 예제에서 참고할 수 있다. 예제 #include using namespace std; class POINT { private: int sx, sy;// private 멤버 변수 public: POINT(int a, int b) {// 생성자 함수 sx = a; sy = b; } int GetSx() { return sx; } int GetSy() { return sy; } }; class FC { private: int x1.. C++ 클래스 상속 II 클래스의 생성자 인수 전달 기본 클래스와 파생 클래스는 자체에 각각 생성자와 소멸자를 가질 수 있다. 이때 생성자의 호출 순서는 먼저 기본 클래스의 생성자가 호출되고 파생 클래스의 생성자가 호출된다. 소멸자인 경우는 반대로 파생 클래스의 소멸자가 호출되고 기본 클래스의 소멸자가 호출된다. 파생 클래스의 생성자가 호출될 때, 선언된 일부 매개 변수를 기본 클래스의 생성자에게 전달해 주는 방법이 있으므로 그 문제를 예방할 수 있다.. 아래 예제에서 자세한 내용을 확인할 수 있다. 예제 #include using namespace std; // 기본 클래스인 POINT 정의 class POINT { private: int sx, sy;// private로 선언된 멤버 변수 public: // public으로 .. 이전 1 2 3 4 ··· 24 다음