Я использую mxDestroyArray()
функцию MATLAB и задаюсь вопросом, как правильно обрабатывать ошибки.
Если я позвонил mxCreate*Array()
или что-то похожее, я получу действительный указатель на успех и NULL
на неудачу, т.е. е. если память заполнена.
Если я создаю несколько массивов таким образом, и хотя бы один из них выходит из строя, я бы хотел освободить все, что мне больше не нужно.
Здесь мне интересно: нужно ли явно проверять каждое значение?
if (error) {
if (a) mxDestroyArray(a);
if (b) mxDestroyArray(b);
if (c) mxDestroyArray(c);
}
или я могу просто опустить чеки?
if (error) {
mxDestroyArray(a);
mxDestroyArray(b);
mxDestroyArray(c);
}