最近一位采访者问我C++中的异常对象在哪里分配,堆栈还是堆栈?我不确定,但我回答堆栈,因为我认为没有"新"或"malloc".这是对的吗?
然后他一直问我,如果它在堆栈上,假设A类抛出异常对象,让我们说"e",B类抓住"e".由于"e"在A的堆栈上,那么B如何能够访问这个"e"?
我对第二个问题不是很清楚.任何人都可以给我一些示例代码,显示"A类投掷e和B级抓住它"?另外,我猜B可以通过复制值或地址来捕获e但是访问者只是拒绝了我的答案而没有给我正确的答案,那么正确的答案是什么,是否有任何机制可以确保类对象可以捕获来自其他类对象的异常?谢谢〜