在指针算术([expr.add]/4.2
的标准规范中,我们有:
否则,如果
P
指向具有 n 个元素 ([dcl.array](x
数组对象的数组元素 i,则表达式P + J
和J + P
(其中J
具有值 j(指向x
的(可能假设的(数组元素 i + j,如果 0 ≤ i+j ≤n,表达式P - J
指向x
的(可能假设的(数组元素 i − j 如果0 ≤i − j≤ n.
这里的"可能假设"是什么意思?该通道已将生成的指针限制在数组的范围内。好吧,包括一个过去的老虎机。这就是它所指的吗?
是的,它是"元素"。
[basic.compound]/3:
[..]出于指针算术 ([expr.add]( 和比较 ([expr.rel], [expr.eq]( 的目的,经过数组x
n 个元素的最后一个元素末尾的指针被视为等效于指向假设数组元素n的指针x
并且不是数组元素的T
类型的对象被视为属于具有一个类型为T
的元素的数组。[..]