Pas*_* W. 5 c++ arrays undefined-behavior
是否有可能访问其边界之外的数组破坏其现有元素
MyObject* array[10];
for(int i=0; i<10; i++)
{
array[i] = nullptr;
}
array[1] = new MyObject();
array[8] = new MyObject();
array[15] = new MyObject();
Run Code Online (Sandbox Code Playgroud)
可能会访问array [15]导致0-10之间的元素损坏?
可能
array[15]导致0-10之间的元素损坏?
是。这是未定义的行为,UB的本质是任何事情都可能发生。特别是,通常无法对可能发生的事情或可能发生的事情进行推理。它可以是任何东西,包括在UB之前完好无损的某些数组元素的损坏。
| 归档时间: |
|
| 查看次数: |
128 次 |
| 最近记录: |