当前位置: 首页 > 面试题库 >

不推荐使用“ ++”:在Swift 3中将其删除

裴英锐
2023-03-14
问题内容

更新到后Xcode 7.3,我的项目中会显示很多警告。

’++’已过时:它将在 Swift 3中* 删除 *

有解决此警告的想法吗?++--将来会被弃用的任何原因是什么?


问题答案:

从Swift 2.2开始,您应该使用+= 1-= 1代替。

在查看了Swift的发展之后,有一些删除这些运算符的原因:

  1. 这些运算符增加了学习Swift作为第一门编程语言的负担-或在其他情况下您还不了解其他语言的运算符。

  2. 它们的表达优势极小-x ++比x + = 1短很多。

  3. Swift已经偏离C,因为=,+ =和其他类似赋值的操作返回Void(出于多种原因)。这些运算符与该模型不一致。

  4. Swift具有强大的功能,消除了您在其他语言中以C风格使用++
    i进行循环的许多常见原因,因此在编写良好的Swift代码中相对很少使用这些原因。这些功能包括for-in循环,范围,枚举,映射等。

5.
实际上,使用这些运算符的结果值的代码通常会使代码的读取器/维护者感到困惑和微妙。他们鼓励使用“过于棘手”的代码,这些代码可能很可爱,但很难理解。

  1. 尽管Swift具有明确定义的求值顺序,但是依赖于它的任何代码(例如foo( a,a ))也将是不可取的,即使它定义得很好。

  2. 这些运算符适用于相对较少的类型:整数和浮点标量,以及类似迭代器的概念。它们不适用于复数,矩阵等。

最后,这些没有通过“如果我们还没有这些,我们可以将它们添加到Swift 3吗?”的度量标准。

请查看Swift进化了解更多信息。



 类似资料:
  • 问题内容: Swift 3将弃用++ 现在可以将变量++编写为 我该如何改写。 请记住和语法之间的区别 问题答案: 将其重写为: …正像警告消息所暗示的那样。当然,这现在需要单独一行(这是此更改的唯一坏处)。重要的是您将那条线放在 哪里 。 所以举个例子 现在变成 但另一方面 现在变成 专家的额外建议: 在极少数情况下,即您返回,它在较大范围内, 然后 递增它—您可以解决以下问题:

  • 我收到此错误,并且尝试将更改为仍然收到不同的错误。

  • 我怎样找到做这件事的新方法?

  • 问题内容: 我收到此警告,但是该程序仍然可以正常运行。 MySQL代码向我显示了一条PHP消息: 不推荐使用:mysql_connect():不推荐使用mysql扩展,以后将被删除:在第2行的C:\ xampp \ htdocs \ task \ media \ new \ connect.inc.php中使用mysqli或PDO代替 我的页面是 这是什么意思,我该如何消除该消息? 问题答案: 有

  • 问题内容: 我正在尝试使用和进行单元测试。 当我不包含注释时,测试将失败。但 不推荐使用MockitoJUnitRunner类型 我正在使用Mockito 2.6.9。我应该怎么做? 问题答案: 现在确实已弃用,应该改为使用。如您所见,仅软件包名称已更改,该类的简单名称仍为 。 摘录自javadoc : 移至,该课程将在Mockito 3中删除

  • 新的侦听器(又名OnCameraMoveListener())方法onCameraMove()没有CameraPosition CameraPosition输入变量,所以我很迷惑:有没有方法回收我的旧代码? 这里有一些参考资料。