Как указано в других ответах, вы должны поймать исключение, только если вы можете сделать какую-то разумную обработку ошибок для него.
Например, в вопросе , который породил ваш вопрос, спрашивающий спрашивает, безопасно ли игнорировать исключения для lexical_cast
из целого числа в строку. Такой актерский состав никогда не должен потерпеть неудачу. Если это не помогло, в программе что-то пошло не так. Что вы могли бы сделать, чтобы восстановиться в этой ситуации? Вероятно, лучше просто позволить программе умереть, поскольку она находится в состоянии, которому нельзя доверять. Поэтому не обрабатывать исключение может быть самым безопасным.
Однажды я столкнулся с этой проблемой, и у меня на iPhone работал механизм преобразования текста в речь Flite (Festival lite). Недавно я сделал для него API-класс. Я попытался упростить (и бесплатно) добавить в новые и существующие проекты. Его можно скачать по адресу здесь .
iPhone 3G S имеет частную инфраструктуру VoiceServices, которая может это делать. Стив Троутон-Смит описывает, как использовать частный класс VSSpeechSynthesizer здесь , но у вас мало шансов получить что-то с его помощью в App Store.
Это возможно, но вам придется бросить свой. Я видел, как это делает приложение.
Я сделал это до выхода iPhone 2.0, перенеся espeak на платформу. Я использовал его как утилиту командной строки, но его можно было бы превратить в библиотеку.
Вы также можете посмотреть этот .
Он использует Flite. Он не содержит конкретных инструкций, но может дать вам идеи.
Там приложение для iPhone, которое делает прямые TTS, поиск «TTSMessenger» на iTunes