したらばTOP ■掲示板に戻る■ 全部 1-100 最新50 | メール | |

管理人の独り言(プログラミング関連)

463 ◆rCEzuNnL0g:2008/09/20(土) 23:01:03
#include <iostream>

class CSuper1{
public:
virtual
int
Get1(){
return 0;
}
};

class CSuper2{
public:
virtual
int
Get2(){
return 1;
}
};

class CSub1 : virtual public CSuper1{
public:
virtual
int
Get1(){
return 2;
}
};

class CSub2 : virtual public CSuper1, virtual public CSuper2{
public:
virtual
int
Get1(){
return 3;
}
virtual
int
Get2(){
return 4;
}
};

class CSub3 : virtual public CSuper2{
public:
int
Get2(){
return 5;
}
};

class CSubSub : public CSub1, public CSub2, public CSub3{
public:
virtual
int
Get1(){
return 6;
}
virtual
int
Get2(){
return 7;
}
};

int main(int argc, char **argv){
{
int (CSubSub::*func1)() = &CSuper1::Get1;
int (CSub1::*func2)() = (int (CSub1::*)())func1;
int (CSub2::*func3)() = (int (CSub2::*)())func1;
CSubSub c;
(c.*func1)();
(c.*func2)();
(c.*func3)();
}
{
int (CSubSub::*func1)() = &CSuper2::Get2;
int (CSub2::*func2)() = (int (CSub2::*)())func1;
int (CSub3::*func3)() = (int (CSub3::*)())func1;
CSubSub c;
(c.*func1)();
(c.*func2)();
(c.*func3)();
}
}


新着レスの表示


名前: E-mail(省略可)

※書き込む際の注意事項はこちら

※画像アップローダーはこちら

(画像を表示できるのは「画像リンクのサムネイル表示」がオンの掲示板に限ります)

掲示板管理者へ連絡 無料レンタル掲示板