обрабатывать C ++ вызывал сбои в iOS

Когда я пишу код в приложении iOS:

string s; s.resize(-1);

это приведет к падению приложения.

Есть ли способ справиться с этим сбоем? Я пытаюсь использовать KSCrash, но безрезультатно.

-2

Решение

string.resize() принимает неподписанный целочисленное значение. Компиляторы часто преобразуют введенное вами -1 (что является целочисленным значением со знаком) в целое число без знака, имеющее такую ​​же битовую комбинацию (обычно это максимально возможное целое число без знака).

В соответствии с cplusplus.com, изменить размер бросков length_error когда поставляемая длина больше чем max_size. Тем не менее, так как max_size не имеет никакого отношения к тому, сколько памяти на самом деле доступный для использования вашей программой, его перехват не исключает вероятности сбоя приложения, поскольку у системы недостаточно памяти для выполнения этого запроса, что, скорее всего, и произошло.


С этим из пути …
Что вы пытаетесь достичь здесь? Было бы гораздо проще добавить if проверьте вместо этого.

1

Другие решения

Других решений пока нет …

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector