私がこのようなことをすると:
int my_array[5] = {1, 2, 3, 4, 5};
for (int &x : my_array) {
x *= 2;
}
C++11 は明らかに、配列に 5 つの要素しかないことを認識しています。この情報は my_array オブジェクトのどこかに保存されていますか?
もしそうなら、開発者として私が利用できない正当な理由はありますか (または?!?!?)? C++ 開発者が扱っている配列の境界を常に知っていれば、世界の問題の多くは解決されるようです。