Поделиться через


Атрибуты указателя, примененные к параметру

Каждый атрибут указателя ([ ссылка], [ уникальный] и [ ptr]) имеет характеристики, влияющие на выделение памяти. В следующей таблице перечислены эти характеристики.

Атрибут указателя Клиент Сервер
Ссылка ([ссылка]) Необходимо выделить клиентское приложение. Специальная обработка, необходимая только для [out], указателей не верхнего уровня.
Уникальный ([уникальный]) Если параметр, клиентское приложение должно выделить ; Если внедрено, может иметь значение NULL. При переходе от null к значению, отличному от NULL, заглушка клиента выделяется. Изменение с ненулевых значений на null может привести к потере.
Полный ([ptr]) Если параметр, клиентское приложение должно выделить ; Если внедрено, может иметь значение NULL. При переходе от null к значению, отличному от NULL, заглушка клиента выделяется. Изменение с ненулевых значений на null может привести к потере.

Атрибут [ref] указывает, что указатель указывает на допустимую память. По определению клиентское приложение должно выделять всю память, необходимую указателям-ссылкам.

Уникальный указатель может измениться с null на значение, отличное от NULL. Если уникальный указатель изменяется с null на значение, отличное от NULL, клиенту выделяется новая память. Если уникальный указатель изменится с отличного от NULL до null, может привести к потере. Дополнительные сведения см. в разделе Потерянные память.