小编Lui*_*ndo的帖子

C ++为什么decltype(* pointer)产生引用?

我想知道为什么当我使用时decltype (* pointer),它将变量的类型定义为引用。例如:

int i = 42, * p = & i;
decltype (* p) c = i;
Run Code Online (Sandbox Code Playgroud)

现在c是一个参考(链接到i)。为什么它是引用而不是整数?我正在读Cpp Primer 5th。版。P. 110这样说,我不明白为什么。

c++ pointers reference decltype language-lawyer

5
推荐指数
2
解决办法
255
查看次数

Java - 更精确的重新抛出功能

在oracle官方网站上写:( http://docs.oracle.com/javase/7/docs/technotes/guides/language/catch-multiple.html#rethrow )

具体来说,在 Java SE 7 及更高版本中,当您在 catch 子句中声明一个或多个异常类型,并重新抛出此 catch 块处理的异常时,编译器会验证重新抛出的异常类型是否满足以下条件:

  • try 块能够抛出它。

  • 没有其他前面的 catch 块可以处理它。

  • 它是 catch 子句的异常参数之一的子类型或超类型。

请集中注意第三点(它是 catch 子句的异常参数之一的子类型或超类型。)

这到底意味着什么?你能给我举一些例子吗?我无法清楚地理解它。

java exception rethrow

5
推荐指数
1
解决办法
262
查看次数