Использование нулевого указателя с OCIAQDeq () - PullRequest
1 голос
/ 25 мая 2011

В документации для OCIAQDeq () говорится:

Приложение может пройти NULL для полезной нагрузки в первый раз OCIAQDeq () вызывается, и пусть OCI выделить память для полезной нагрузки. Затем он может использовать указатель на это ранее выделенная память в последующие вызовы OCIAQDeq ().

У кого-нибудь есть пример использования этой функции? Если я передам NULL, откуда я впоследствии получу указатель? Спасибо!

1 Ответ

2 голосов
/ 25 мая 2011

Этот фрагмент документации относится к параметру payload функции, которая является двойным указателем: dvoid ** в соответствии со следующим

Поскольку это двойной указатель, выделенный буфер будет передан вызывающей стороне через переданный параметр. Например,

dvoid* pBuffer = NULL;
OCIAQDec(..., &pBuffer, ...);

Поскольку передано NULL, функция выделит буфер и сохранит его в значение pBuffer, которое впоследствии можно будет использовать повторно

...