my-server
← Wiki

Dispatch table

In computer science, a dispatch table is a table of pointers or memory addresses to functions or methods. Use of such a table is a common technique when implementing late binding in object-oriented programming.

It is primarily used to simplify program lines and reduce lines of code.

In different programming languages

Perl

The following shows one way to implement a dispatch table in Perl, using a hash to store references to code (also known as function pointers).

Running this Perl program as <code>perl greet -h</code> will produce "hello", and running it as <code>perl greet -g</code> will produce "goodbye".

JavaScript

Following is a demo of implementing a dispatch table in JavaScript:

Lua

In Lua, this behavior is supported and encouraged. Here is an example:

Virtual method tables

In object-oriented programming languages that support virtual methods, the compiler will automatically create a dispatch table for each object of a class containing virtual methods. This table is called a virtual method table or vtable, and every call to a virtual method is dispatched through the vtable.

See also

References