次のドキュメントの 4 ~ 5 ページ:
http://www.open-std.org/jtc1/sc22/wg21/docs/ESC_Boston_01_304_paper.pdf
typedef int (* jumpfnct)(void * param);
static int CaseError(void * param)
{
return -1;
}
static jumpfnct const jumptable[] =
{
CaseError, CaseError, ...
.
.
.
Case44, CaseError, ...
.
.
.
CaseError, Case255
};
result = index <= 0xFF ? jumptable[index](param) : -1;
IF-ELSE と SWITCH を比較してから、この「ジャンプ テーブル」を紹介します。どうやらこれは 3 つの中で最速の実装です。正確には何ですか?どのように機能するのかわかりませんか??