显然 ++ 表示 Objective-C 整数 属性 的 +4 或 +8

Apparently ++ means +4 or +8 for an Objective-C integer property

出于某种原因,当我尝试增加我的一个整数时,它增加了四而不是一!我唯一能想到的是 .h 文件有问题。整数声明如下:

@property (nonatomic, assign) int *number;

并且在代码中我通过执行 self.number++; 来递增它。我已经检查过,该方法只运行一次就显示在屏幕上,当我直接 NLog 绕过它时,它显示它递增 4。更糟糕的是,我尝试将其更改为 NSInteger 哈哈,它增加了 8!

从 属性 定义中删除 *

当你有int时,++是整数递增。但是,当您有一个 int* 时,您有一个指针,而 ++ 是指针增量,将指针移动一个 int (sizeof(int)) 的大小。