반응형

#include <iostream>
using namespace std;

class A{
public :
 virtual void initialize(){
  cout<<"base initialize"<<endl;
 } 
 virtual float integrate(float dt){ return 0;}  
};

class B : public A{
public :
 void initialize(){
  
 }
 static float integrate(float dt){
  cout<<"derived initialize"<<endl;
 }
};


int main(){

 B derived;

 A* pBase= &derived;

 pBase->initialize();                             //A 클래스의 initialize() 가 호출된다

 return 0;
}

 

B 의  static float integrate(float dt)  ==>  float integrate(float dt) 로 고치면 당연히 B 의 initialize() 가 호출된다

 


반응형

+ Recent posts