Все
написал какой-то модный контейнер с итераторами. Так что я
iterator begin() {
}
iterator end() {
}
const_iterator begin() const {
}
const_iterator end() const {
}
В тесте я создаю экземпляр контейнера, заполняю его и тестирую. Что является приемлемым / хорошим способом назвать как константную, так и неконстантную версию? Скажем, простой тест вроде
TEST( c.end() - c.begin() == c.size() );
должен работать как для итераторов, так и для константных итераторов.
Const ссылка? Какой-то уродливый состав?
Я бы просто сделал const& к нему:
const container& constC= c;
TEST(constC.end() - constC.begin() == constC.size());
Я думаю, что не перегружать их является лучшим решением в соответствии с std
условность.
декларировать cbegin()
а также cend()
вместо.