Я нашел то, что выглядит как противоречивые ответы, касающиеся исключений, брошенных внутри конструкторов в C ++. Один из ответов в этой ссылке гласит, что если исключение добавляется внутрь конструктора, предполагается, что строительство не завершено, и поэтому деструктор не называется. Но эта ссылка обсуждает концепцию RAII, используя пример мутекса, созданного в конструкторе, и очищенного в деструкторе. В нем говорится, что если в конструкторе создается мутекс, а затем конструктор вызывает функцию, которая бросает экскапитацию, и обработчик исключений не определяется, тогда деструктор все еще будет вызван, и мутекс будет очищен. Что
мне не хватает? < /P>
Подробнее здесь: https://stackoverflow.com/questions/560 ... nstructors
Путаница в отношении исключений в конструкторах C ++ ⇐ C++
-
- Похожие темы
- Ответы
- Просмотры
- Последнее сообщение