LINUX.ORG.RU

История изменений

Исправление nikolnik, (текущая версия) :

через месяц ты начинаешь работать с «внешней библиотекой» где очевидно что все индексы с 0 номера массива,ты делаешь свое «удобство» где сдвигаешь индексы с 0 на 1 делаешь двустороннее преобразование для всех массивов

Проблема в том, что надо понимать массив не как «первый элемент», а как смещение адресов &arrayBeginPointer + sizeof(T)*index, тогда все становится на свои места с пониманием, почему первый элемент с нуля.

Исходная версия nikolnik, :

через месяц ты начинаешь работать с «внешней библиотекой» где очевидно что все индексы с 0 номера массива,ты делаешь свое «удобство» где сдвигаешь индексы с 0 на 1 делаешь двустороннее преобразование для всех массивов

Проблема в том, что надо понимать массив не как «первый элемент», а как смещение адресов &arrayBeginPtr + sizeof(T)*index, тогда все становится на свои места с пониманием, почему первый элемент с нуля.