Classes with Compact Type IDs

You can optionally associate a numeric identifier with a class. The Ice runtime substitutes this value, known as a compact ID, in place of its equivalent string type ID during marshaling to conserve space. The compact ID follows immediately after the class name, enclosed in parentheses:

Slice
module M
{
class CompactExample(4)
{
// ...
}
}

In this example, the Ice runtime marshals the value 4 instead of its string equivalent "::M::CompactExample". The specified value must be a non-negative integer that is unique within your application.