Re: Что мешает не вычислять size() каждую итерацию цикла?
От: rg45 СССР  
Дата: 30.04.21 13:32
Оценка:
Здравствуйте, Zhendos, Вы писали:

Z>почему компилятор считает что "MyVec<MyVec<int>>" может из-за этого поменяться?


Потому, что константность ссылки, по которой вектор передается в foo, не гарантирует его неизменяемости. Да, взлом константности не есть хорошо с точки зрения дизайна, но программа-то остается well-formed, тем не менее. А значит, компилер обязан корректно обработать и этот случай.

Да и сколько там тех вычислений. Два mov-а и один sub. Неужто чувствительно?
--
Отредактировано 30.04.2021 13:34 rg45 . Предыдущая версия . Еще …
Отредактировано 30.04.2021 13:33 rg45 . Предыдущая версия .
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.