Win32 API - вопрос MultiByteToWideChar и WideCharToMultiByte - PullRequest
0 голосов
/ 13 мая 2011

Нужно ли освобождать строки, которые я получаю от этих функций? Или, может быть, система отслеживает их. Тот же вопрос касается и GetCommandLine ().

Ответы [ 2 ]

6 голосов
/ 13 мая 2011

Вы несете ответственность за распределение и освобождение буферов, отправленных на MultiByteToWideChar и WideCharToMultiByte.

Возвращаемое значение из GetCommandLine обрабатывается Win32.

3 голосов
/ 13 мая 2011

Для функций преобразования Unicode вам необходимо выделить память для хранения преобразованных строк. Вы отвечаете за время жизни этой памяти.

Для GetCommandLine вам не нужно освобождать возвращенный блок памяти.

Основное правило заключается в том, что вы должны освободить память тогда и только тогда, когда вы распределили память.

...