1.程序必须在每一个执行点确认“如果发生异常,哪些对象需要析构”。
2.必须对每一个try语句块的进入点和离开点做记号,还必须知道他们的异常类型和对应的catch。
3.没产生一个exception specification,就相当于一个try语句块的消耗。
所以,为了让exception的相关成本最小化,最好的方法(我认为)是:对try和exception specification 的使用限制于非
用不可的地步。
还有一种方法:只要你的程序中不支持exception,编译器就不支持。(大部分编译器还是支持在编译过程中放弃exception)。
自己认为,这种情况出现的较少。