구조 파생 류

1863 단어 Cplus
//---------main.cpp------------
#include 
#include 

//  :     


using namespace std;

class Student
{
private:
	string name;
	int semesterHours ;
	double average;
public:
	Student(string pName = "noName")        //    ,      
	{
		name = pName;
		semesterHours= 0;
		average = 0;
	}
	//Student(){std::cout<*/<

Advisor ....
GraduateStudent.....
name is : Jack undergraduate ,hours = 3 average = 0.833333
name is : noName ,hours = 3 average = 1
~GraduateStudent....
~Advisor ....
~Student.....
~Student.....
임의의 버튼 을 눌 러 계속 하 세 요..
파생 클래스 도 클래스 입 니 다. 구조 함 수 를 정의 하지 않 으 면 클래스 체제 에 따라 기본 적 인 무 참 구조 함 수 를 실행 합 니 다.파생 류 의 기본 무 삼 구조 함 수 는 먼저 부모 류 의 무 삼 구조 함 수 를 호출 합 니 다. 만약 에 부모 류 가 유 삼 구조 함수 (따라서 기본 무 삼 구조 함수 가 없 음) 를 정의 하고 무 삼 구조 함 수 를 다시 로드 하지 않 으 면 컴 파일 에 화 를 낼 수 있 습 니 다.만약 에 아버지 류 에 아버지 류 가 있다 면 아버지 류 는 먼저 아버지 류 의 무 참 구조 함 수 를 호출 하여 순서대로 재 귀 할 것 이다.
위의 프로그램 에서 부모 클래스 는 Student 입 니 다. 부모 클래스 에서 무 참 구조 함 수 를 정의 하고 컴 파일 할 때 오류 가 발생 했 습 니 다!
왠 지, 왜????????????????
       정 답: Student (string pName = "noName")       //구조 함수, 기본 값 {name = pName; semester Hours = 0; average = 0;} 을 추가 합 니 다.
이것 이 바로 기본 구조 함수 입 니 다.
Student () {std:: cout <
추가 설명: Student (string pName = "noName") 에 대해 인 자 를 입력 하지 않 으 면 기본 구조 함수 입 니 다. 하 나 를 더 정의 하면 Student () {std:: cout < 그 구조 함 수 를 호출 할 줄 몰 랐 기 때문에 Student(){std::cout<
//---------main.cpp------------
#include 
#include 

//

using namespace std;

class A
{
public:
	A(){std::cout< "< "<

A ->
B->
  임의의 버튼 을 눌 러 계속 하 세 요..
1

좋은 웹페이지 즐겨찾기