【发布时间】:2011-10-25 06:10:48
【问题描述】:
我认为使用影子变量太危险了。为什么 Scala 支持这种语言结构?应该有一些强有力的理由,但我找不到。
【问题讨论】:
-
我也想知道同样的事情。也许 Odersky 等人只是将这种行为从 Java 中转移出来而没有考虑。
-
我相信奥德斯基先生对任何特定语言结构的决策都有一定的动机。 :)
-
:) 很公平。我猜他认为编译器警告就足够了。我可以看到 scalac 采用编译器选项 -Ywarn-shadowing,所以大概 IDE 也支持它。
-
@amir75 实际上,所有 -Y 都是 Paul Phillips 的作品,在本质上有点实验性质。如果它在那里,那是因为它实际上对他很有用,很可能。
-
我看到它已经过时了,但是......这是我最近读过的最奇怪的问题。什么是替代方案?一个巨大的全球范围,每个导入的图书馆都会受到严重污染?奇怪的变量和函数名称,例如 glDrawStuff 或 cvSeeStuff?