如果我从函数h()抛出一些字符串,则>
f()->g()->h()
以这种方式
throw std::string("error");
并且仅捕获f()。程序在哪里为该字符串分配内存?显然,它不能在h()的堆栈上分配它。如果这是f()的堆栈,它将以什么方式知道应该在什么位置分配?
如果我以这种方式从函数h()f()-> g()-> h()抛出一些字符串,则抛出std :: string(“ error”);并且仅捕获f()。程序在哪里为该字符串分配内存?显然不能...
如果这是
f()
的堆栈,它以何种方式知道应在何处分配?