Closed GoogleCodeExporter closed 9 years ago
0. Не называйте, пожалуйста, файлы/папки
русскими символами. Я переименовал. Не
забудьте сделать svn update. Комментарии на
русском в коде я тоже не могу читать.
Пишите, пожалуйста, транслитом или
по-английски.
1. Варнинги при компиляции:
main.cpp: In member function ‘void TVector<T>::push_back(const T&) [with T =
int]’:
main.cpp:372: instantiated from here
main.cpp:333: warning: comparison between signed and unsigned integer
expressions
main.cpp: In member function ‘void TVector<T>::pop_back() [with T = int]’:
main.cpp:377: instantiated from here
main.cpp:353: warning: comparison between signed and unsigned integer
expressions
main.cpp: In member function ‘void TVector<T>::resize(int, T) [with T =
int]’:
main.cpp:381: instantiated from here
main.cpp:229: warning: comparison between signed and unsigned integer
expressions
main.cpp:231: warning: comparison between signed and unsigned integer
expressions
main.cpp:234: warning: comparison between signed and unsigned integer
expressions
main.cpp:242: warning: comparison between signed and unsigned integer
expressions
main.cpp:243: warning: comparison between signed and unsigned integer
expressions
main.cpp:250: warning: comparison between signed and unsigned integer
expressions
main.cpp: In member function ‘void TVector<T>::reserve(int) [with T = int]’:
main.cpp:383: instantiated from here
main.cpp:263: warning: comparison between signed and unsigned integer
expressions
main.cpp:267: warning: comparison between signed and unsigned integer
expressions
2. Мало тестов.
3. Не вижу тестов на утечки памяти.
4. Это не ошибка, но нет необходимости
реализовывать итератор вектора как
сложный объект. Можно было просто
использовать указатель и сделать ему typedef.
5. Удобнее все таки когда operator+= (и ему
подобные) возвращают не void, а ссылку на
результат. Иначе его невозможно
использовать в выражениях.
6. operator= у Вас возвращает ссылку на
временнуй объект. Кроме того, что это
логически неверно, это может привести к access
violation, т.к. после выхода из метода, этот
временный объект более не существует.
7. Константный итератор у Вас ничем не
отличается от неконстантного. В чем фишка? :)
8. Нет константных версий begin/end.
9. Нет константных версий back/front.
Решение не принято.
Original comment by aivyu...@gmail.com
on 18 Mar 2013 at 8:33
Дубль
Original comment by aivyu...@gmail.com
on 26 May 2013 at 8:49
Original issue reported on code.google.com by
zhilinskaya.valentina
on 10 Mar 2013 at 2:31