【发布时间】:2015-05-22 04:31:15
【问题描述】:
有人能解释一下为什么这会给*a=9; 行提供无法访问的代码警告吗?
我正在使用 VS2015 预览和警告级别 4
int main(){
int* a = foo();
try{
*a = 5;
}catch(int)
{
*a=9;
}
return 0;
}
【问题讨论】:
-
*a = 5;怎么会抛出catch(int)可以处理的东西? -
@ghs.at: 那么如果我在
*a=5;行之后添加foo();行,警告就会消失。这是怎么发生的? -
@NayanaAdassuriya 这意味着 foo() 可能会抛出异常。
-
@harper
foo对这个例子做了什么并不重要 -
int a* =是什么意思?你的意思是int *a =?
标签: c++