Вопрос

В чем разница между следующим Саль аннотации?

void foo(__deref_out_opt PSTR* bar);

void foo(__deref_opt_out PSTR* bar);
Это было полезно?

Решение

А PSTR* Параметр Out означает, что вызывающий абонент проходит в буфере, который получает указатель на строку.

В __deref_out_opt строка не является необязательной (функция помещает нулевое в буфере, предоставленном вызывающим абонентом).

В __deref_opt_out буфер является необязательным (вызывающий абонент передает NULL, чтобы указать неинтересту в выходном значении).

Предположительно, можно объединить эти концепции, должен быть __deref_opt_out_opt модификатор для этого.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top