首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ >

throw的有关问题

2012-03-24 
throw的问题今天没事翻书玩,看到异常那一块!class a_class{....}try{if(....){a_class a//局部对象throw

throw的问题
今天没事翻书玩,看到异常那一块!
class a_class
{
....
};

try
{
if(....)

 {
  a_class a;//局部对象 
  throw a; //抛出一个局部对象,
 }

}
catch(a_class& )//不理解的是:这个地方竟然是一个指向据对对象的引用!!! 咋回事???引用能用在局部对象上?
{

.....
}


书上大致就是以上这样写的!
注:我记得return是不能返回一个局部对象的引用!

[解决办法]
C++使用throw关键字来产生异常,try关键字用来检测的程序块,catch关键字用来填写异常处理的代码。异常可以由一个确定类或派生类的对象产生。C++能释放堆栈,并可清除堆栈中所有的对象。
[解决办法]
抛出的对象是局部对象的一个拷贝。

热点排行