gpt4 book ai didi

lambda - 是否可以从 lambda 闭包中隐藏变量?

转载 作者:行者123 更新时间:2023-12-04 19:00:07 26 4
gpt4 key购买 nike

我正在尝试在 Kotlin 中创建一个类型安全的 groovy 风格的构建器,就像它描述的那样 here .
问题在于嵌套 lambda 中 lambda 接收器的可见性。
这是一个简单的例子。

html {
head(id = "head1")
body() {
head(id = "head2")
}
}

嵌套 lambda 的接收器是没有 'head' 方法的 Body。尽管如此,这段代码编译并打印成:
<html>
<head id="head1"></head>
<head id="head2"></head>
<body></body>
</html>

这是意料之中的,但有没有办法在内部头部获得编译错误?

最佳答案

从 Kotlin 1.0 开始,这是不可能的。有一个open feature request对于此功能。

关于lambda - 是否可以从 lambda 闭包中隐藏变量?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39456697/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com