使用T[]访问彼此相邻声明的两个T类型对象是否是未定义的行为?

我最近观看了 Miro Kenjp 关于“不符合标准的 C++:委员会向你隐藏的秘密”的 CppCon 演讲。

在 28:30 ( https://youtu.be/IAdLwUXRUvg?t=1710 ) 他说访问彼此相邻的双打是 UB,我不太明白为什么。有人可以解释为什么会这样吗?

如果是这种情况,那么它的 UB 肯定会以这种方式访问​​其他东西,例如:

int* twoInts = malloc(sizeof(int) * 2);
int secondInt = twoInts[1]; //Undefined behaviour?

以上是使用T[]访问彼此相邻声明的两个T类型对象是否是未定义的行为?的全部内容。
THE END
分享
二维码
< <上一篇
下一篇>>