#include <cstdio>	// for printf.

class A
{
public:
	A()
	{
		(this    ->*    A::table[0])();
		(this    ->*    A::table[1])();
	}


	static auto make_table() -> void (A::* *)()
	{
		static void(A::* data_tmp[])() = { &A::f1, &A::f2 };
		return data_tmp;
	}
private:
	static void (A::* *table)();
	void f1() { std::printf("1\n"); }
	void f2() { std::printf("2\n"); }
};

void (A::* *A::table)() = A::make_table();



auto main() -> int
{
	A a;
}
