变量不增加

时间:2015-07-24 18:26:33

标签: swift

我必须根据两个日期进行一些微积分,并且用户说是否应该计算初始月份。

我的代码是这样的:

 let qtMeses = getMonthDifference( dateaq!, d2: datebase! )
    if ( proprioMesSwitch.on  ){
      let qtMeses = qtMeses + 1
    }

例程计算两个日期之间的月份,并检查用户是否选中了初始月份选项。

在调用getMonthDifference过程后,假设qtMeses变量的值为20。在测试proprioMesSwitch并执行let qtMeses = qtMeses + 1行之后,即使之后的结果仍然相同20。

我做错了什么?谢谢你。

2 个答案:

答案 0 :(得分:2)

使用let ...你定义一个新变量qtMeses,隐藏外部变量。

使用:

var qtMeses = getMonthDifference( dateaq!, d2: datebase! )
if (proprioMesSwitch.on) {
   qtMeses = qtMeses + 1
}

答案 1 :(得分:0)

我找到了问题的答案。即使我已经使用var qtMeses声明了变量qtMeses,我使用了让qtMeses为这个变量赋值。

但是因为让qtMeses swift将我的var改为一个s why i couldn t不再改变它的常量。

qtMeses = getMonthDifference( dateaq!, d2: datebase! )
if ( proprioMesSwitch.on  ){
  qtMeses = qtMeses + 1
}

没有问题。