Как мне очистить все содержимое файла на C?

Предостережение здесь. В Objective C, в отличие от многих подобных языков, обычно необходимо стараться не использовать исключения для ситуаций с распространенной ошибкой, которые могут произойти в нормальном функционировании.

документация Apple для Obj-C 2.0 указывает следующее: "Важный: Исключения являются ресурсоемкими в Objective C. Вы не должны использовать исключения для общего управления потоком, или просто показать ошибки (такие как файл, не являющийся доступным)"

, концептуальная документация Обработки исключений Apple объясняет то же, но с большим количеством слов: "Важный: необходимо зарезервировать использование исключений для программных ошибок или непредвиденных ошибок выполнения такой как за пределы доступ набора, попытки видоизменить неизменные объекты, отправив недопустимое сообщение, и теряя соединение с сервером окна. Вы обычно заботитесь об этих видах ошибок за исключениями, когда приложение создается, а не во времени выполнения. [.....] Вместо исключений, ошибочные объекты (NSError) и механизм ошибочной доставки Какао являются рекомендуемым способом передать ожидаемые погрешности в приложениях Какао".

причины этого состоят в том, чтобы частично придерживаться программирования идиом в Objective C (использующий возвращаемые значения в простых случаях и параметрами ссылки (часто класс NSError) в более сложных случаях), частично тот бросок и ловля исключений являются намного более дорогими и наконец (и perpaps самое главное), что исключениями Objective C является тонкая обертка вокруг C setjmp () и longjmp (), функции, по существу портя Вашу тщательную обработку памяти, видят это объяснение .

21
задан Antal Spector-Zabusky 27 January 2011 в 11:15
поделиться