Когда я буду использовать bad_typeid? - PullRequest
3 голосов
/ 03 марта 2011

Когда именно будет использоваться исключение bad_typeid?

Ответы [ 2 ]

2 голосов
/ 03 марта 2011

Этот тип исключения обычно не будет использоваться . Вместо этого он существует только для того, чтобы вы могли распознать его. Если тестер или пользователь отправит вам отчет о сбое, в котором упоминается bad_typeid, вы узнаете, какую ошибку следует искать, когда начнете отладку.

На самом деле вы не должны сами создавать это исключение, и я не думаю, что вы даже должны его поймать. В конце концов, что вы могли бы сделать, чтобы устранить основную причину этой ошибки в вашей программе? Способ устранения этого типа исключения состоит в том, чтобы найти ошибку, исправить ее, перекомпилировать и распространить обновленную версию вашей программы, которая не пытается использовать оператор typeid для недопустимых значений.

2 голосов
/ 03 марта 2011

Исключение bad_typeid выдается оператором typeid, когда операндом для typeid является NULL-указатель.Другими словами, исключения класса bad_typeid генерируются, когда typeid вызывается по нулевому указателю с разыменованным указателем.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...