初めて仮想関数(WindowsのCOMです)なるものを使う場面が出てきて悩んでます
class Base{
public:
virtual void Paint() = 0 ;
};
class Derived : public Base{
public:
int n ;
void Paint(){
cout << "Call Derived Paint\n";
}
};
int _tmain(){
Base* c = new Derived() ;
c->Paint() ;
return 0 ;
}
この形でDerivedだけが持つ変数nなどをmainから書き換える事は出来るのでしょうか?
実際はDerivedにHWND等を渡したいのですがstaticなりでグローバルに宣言しておかないとダメですか?