Здравствуйте, Tom, Вы писали:
Tom>Вот сижу делаю ревью чужого кода:
...
Tom>Как вам такое? Я вот думаю как бы помягче обьяснить человеку, что он не прав.
Такой контейнер, конечно, неплохо использовать с целью скорее не для проверки диапазона, а для экономии ресурсов — в случае, если выполняется много обращений на чтение елементов
const_reference []()
за пределами массива. ssm и eao197 об этом уже сказали, но есть один ньюанс (чуть ниже). И опять же — тогда не "SafeVector". Иначе — действительно at().

IMHO, если чтобы не обидеть, нужно ему обьяснить, что надо переписать реализацию НЕконстантного оператора [] (Пока в m_FakeItem ничего не пишем — конечно, всё и так работает неплохо

)
Т.е., сделать что-то вроде copy-on-write — при вызове НЕконстантного оператора [] расширять и заполнять вектор до указанного индекса m_FakeItem'ами.