Полная декларация такова:
struct ContractIDEntry
{
const char* contractid;
nsID const * cid;
};
Так же, как объявление contractid
означает, что структура содержит указатель на символ, а не что символ является частью структуры, объявление cid
означает, что структура содержит указатель на nsID. Структура не содержит nsID, просто указатель на один.
Технически, это указатель, который не может быть использован для изменения указанного значения, но Delphi не имеет этой концепции, поэтому объявите его как обычный указатель.