#include <iostream>
using namespace std;
class A{
public :
A(){
void (A::*ptr[3])(void) = {
&A::pattern0,
&A::pattern1,
&A::pattern2
};
(this->*ptr[0])();
(this->*ptr[1])();
(this->*ptr[2])();
}
~A(){
}
private:
void pattern0(void){
printf("パターン01\n");
}
void pattern1(void){
printf("パターン02\n");
}
void pattern2(void){
printf("パターン03\n");
}
};
int main(){
A a;
return 0;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgp1c2luZyBuYW1lc3BhY2Ugc3RkOwoKY2xhc3MgQXsKCXB1YmxpYyA6CgkJIEEoKXsKCQkJdm9pZCAoQTo6KnB0clszXSkodm9pZCkgPSB7CgkJCQkmQTo6cGF0dGVybjAsCgkJCQkmQTo6cGF0dGVybjEsCgkJCQkmQTo6cGF0dGVybjIKCQkJfTsKCQkJKHRoaXMtPipwdHJbMF0pKCk7CgkJCSh0aGlzLT4qcHRyWzFdKSgpOwoJCQkodGhpcy0+KnB0clsyXSkoKTsKCQl9CgkJfkEoKXsKCQl9Cglwcml2YXRlOgoJCXZvaWQgcGF0dGVybjAodm9pZCl7CgkJCXByaW50Zigi44OR44K/44O844OzMDFcbiIpOwoJCX0KCQl2b2lkIHBhdHRlcm4xKHZvaWQpewoJCQlwcmludGYoIuODkeOCv+ODvOODszAyXG4iKTsKCQl9CgkJdm9pZCBwYXR0ZXJuMih2b2lkKXsKCQkJcHJpbnRmKCLjg5Hjgr/jg7zjg7MwM1xuIik7CgkJfQp9OwoKaW50IG1haW4oKXsKCQoJQSBhOwoJCgkKCXJldHVybiAwOwp9