gpt4 book ai didi

swift - 为什么变量赋值之外的数字会编译?

转载 作者:搜寻专家 更新时间:2023-11-01 06:40:36 25 4
gpt4 key购买 nike

为什么在 Swift 中我可以键入数字而不将它们分配给 var 或 let,并且代码可以正常编译?这有什么用?

import Foundation

55

25

23+8

print("Hello, World!")

4

11

-45

最佳答案

What is this good for?

它对任何事情都没有好处,因为它不会导致与程序流有关的任何事情发生。如果你明白我的意思,那只是你为了好玩而做的事情。数值没有被捕获,所以实际上它会立即被丢弃,就像一个虚拟粒子,前一秒闪现,下一秒又消失。

之所以合法,是因为 Swift 语句是可计算的表达式。数字字面量是一个可计算的表达式,因此它作为一个独立的语句是合法的——尽管没有用。

您可以通过许多其他方式看到同一件事。这是合法的:

let n = 23
n

n 是一个可计算的表达式,因此作为单独的语句是合法的。但是没用。

编辑 回答您在下面的评论:我看不出为什么一个无用的语句会阻止程序编译。但在这种情况下,我同意如果编译器警告你正在做一些无用的事情可能会有所帮助,事实上,至少在这种情况下,我已经提交了一份错误报告,要求这样做。

关于swift - 为什么变量赋值之外的数字会编译?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35899682/

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