...ing logging 4.0

はてなブログに移行しました。D言語の話とかいろいろ。

メンバ関数ポインタ

デリゲートの説明文を書くために,その比較相手としてC++メンバ関数ポインタを勉強し直した.
というか,初めてコードを書いたかもしれん.
なんてわかりにくいんだ,こやつは.


ついでに,ソースコードをハイライトできるようになったみたいなのでそれのテストもしてみるテスト.

#include <iostream>
using namespace std;

class A
{
public:
	virtual void run()
	{
		cout << "A::run()" << endl;
	}
};

class B : public A
{
public:
	virtual void run()
	{
		cout << "B::run()" << endl;
	}
};

int main()
{
	void (A::*m)() = &A::run;

	A* a = new A();
	A* b = new B();
	(a->*m)();
	(b->*m)();

	return 0;
}