순허함수와 추상류의 계승과 실현
먼저 헤더 파일 "virtual function.h"를 씁니다.
1: #ifndef _VIRTUAL_FUNCTION_H_ 2: #define _VIRTUAL_FUNCTION_H_ 3: 4: #include <iostream> 5: #define Human 6: #define Female 7: #define Women 8: #define Girl 9: class 10: { 11: int age; // , 12: public: 13: () 14: { 15: std::cout << " " << std::endl; 16: age = 18; 17: } 18: ~ () 19: { 20: std::cout << " " << std::endl; 21: } 22: // , , 23: virtual void showAge() = 0; 24: }; 25: class 26: { 27: public: 28: // 29: () 30: { // 31: std::cout << " " << std::endl; 32: } 33: ~ () 34: { // 35: std::cout << " " << std::endl; 36: } 37: // , , 38: virtual void showMaxim() = 0 39: { 40: std::cout << " 。。。" << std::endl; 41: } 42: }; 43: 44: class :public , public 45: { 46: // , , 47: int charm; // 48: public: 49: // 50: () 51: { 52: std::cout << " 。。。" << std::endl; 53: } 54: ~ () 55: { 56: std::cout << " " << std::endl; 57: } 58: // , 59: virtual void showAge() 60: { 61: std::cout << " 20 " << std::endl; 62: } 63: virtual void showMaxim() 64: { 65: std::cout << " " << std::endl; 66: } 67: }; 68: 69: class :public 70: { 71: public: 72: void showAge() 73: { 74: std::cout << " , "<<std::endl; 75: } 76: void showMaxim() 77: { 78: std::cout << " , "<<std::endl; 79: } 80: }; 81: 82: #endif // !_VIRTUAL_FUNCTION_H_ 메일 하나 더 주세요.cpp
1: #include "virtual_function.h" 2: 3: int main() 4: { 5: { 6: *pgirl = new ; 7: *phuman = pgirl; 8: *pfemale = pgirl; 9: *pwomen = pgirl; 10: 11: // 12: std::cout << "
====== ============" << std::endl; 13: pgirl->showAge(); 14: pgirl->showMaxim(); 15: //phuman showAge 16: phuman->showAge(); 17: //pfemale showMaxin 18: pfemale->showMaxim(); 19: // 20: pwomen->showAge(); 21: pwomen->showMaxim(); 22: 23: // 24: std::cout << "
====== ============" << std::endl; 25: pgirl-> ::showAge(); 26: pgirl-> ::showMaxim(); 27: //phuman , 28: //phuman-> ::showAge(); 29: //pfemale , 30: //pfemale-> ::showMaxim(); 31: // 32: pwomen-> ::showAge(); 33: pwomen-> ::showMaxim(); 34: 35: // , showAge , 36: // , 37: std::cout << "
====== ============" << std::endl; 38: // pgirl-> ::showAge(); // , 39: pgirl-> ::showMaxim(); 40: //phuman showAge 41: // phuman-> ::showAge(); 42: //pfemale showMaxin 43: pfemale-> ::showMaxim(); 44: // 45: // pwomen-> ::showAge(); 46: pwomen-> ::showMaxim(); 47: 48: 49: 50: std::cout << "
====== sizeof , ============" << std::endl; 51: // 32 52: std::cout << "sizeof ( )=" << sizeof( ) << std::endl; //16 showAge showMaxim , 53: std::cout << "sizeof ( )=" << sizeof( ) << std::endl; //16 , 4 54: std::cout << "sizeof ( )=" << sizeof( ) << std::endl; //8 age 4 , (vfptr) 55: std::cout << "sizeof ( )=" << sizeof( ) << std::endl; //4 , vfptr 56: 57: std::cout << "pgirl=\t\t" << pgirl << std::endl; // 01A92B8 58: std::cout << "pwomen=\t\t" << pwomen << std::endl; // 01A92B8 59: std::cout << "phuman=\t\t" << phuman << std::endl; // 01A92B8 60: std::cout << "pfemale=\t" << pfemale << std::endl; // 01A92C0 61: 62: 63: } 64: 65: std::cin.get(); 66: return 0; 67: } 출력 결과는 다음과 같습니다.
。。。 ====== ============ , , , , , , ====== ============ 20 20 ====== ============ 。。。 。。。 。。。 ====== sizeof , ============ sizeof ( )=16 sizeof ( )=16 sizeof ( )=8 sizeof ( )=4 pgirl= 00586D38 pwomen= 00586D38 phuman= 00586D38 pfemale= 00586D40
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
다양한 언어의 JSONJSON은 Javascript 표기법을 사용하여 데이터 구조를 레이아웃하는 데이터 형식입니다. 그러나 Javascript가 코드에서 이러한 구조를 나타낼 수 있는 유일한 언어는 아닙니다. 저는 일반적으로 '객체'{}...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.