Как-то я работал над таким проектом, где у объектов были такие именна в функции с парочкой вложенных циклов и ифов. Структура кода не сказать, что была бы сложная, но когда доходишь глазами до нижнего уровня уже забываешь что таакое «i», приходиться возвращаться в начало, а там забываешь откуда ты перешел. Внятное имя решило бы эту проблему.
Возьми в проект огромный boost, занимающий несколько гигабайт места на SSD диске
ну во-первых про несколько гб это сильное преувеличение. Ыо-вторых велосипедостроение это плохо, а ведь действительно написал один костыл — избежал буста, в след. раз: «А вроде буст и не нужен же сейчас, двайте еще велосипед запилим» и так много раз — код сложнее и костыльнее. В-третьих открой для себя уже bcp. В-четвертых regex — часть stl уже давно.
Да, это статический полиморфизм. Нельзя использовать коллекцию базовых объектов, нельзя вернуть ссылку/указатель на базовый объект из некой функции, но реально ссылающуюся на разные объекты в зависимости от разных условий и вызвать у нее потом некий метод например тот же Do(). Да, этого нельзя. Это ограничения статического полиморфизма, но быть полиморфным код выше от этого не перестал.
Теперь каждый раз нужно лезть в класс, и смотреть, а нет ли у него move semantics внутри, чтобы знать, что этот класс нельзя использовать после копирования foo&.
Мне кажется вы не поняли move сементику. Проблемы никакой нет. Прочитайте еще раз до полного просветления.
Как-то я работал над таким проектом, где у объектов были такие именна в функции с парочкой вложенных циклов и ифов. Структура кода не сказать, что была бы сложная, но когда доходишь глазами до нижнего уровня уже забываешь что таакое «i», приходиться возвращаться в начало, а там забываешь откуда ты перешел. Внятное имя решило бы эту проблему.
ну во-первых про несколько гб это сильное преувеличение. Ыо-вторых велосипедостроение это плохо, а ведь действительно написал один костыл — избежал буста, в след. раз: «А вроде буст и не нужен же сейчас, двайте еще велосипед запилим» и так много раз — код сложнее и костыльнее. В-третьих открой для себя уже bcp. В-четвертых regex — часть stl уже давно.
Мне кажется вы не поняли move сементику. Проблемы никакой нет. Прочитайте еще раз до полного просветления.