cpp-ru / ideas

Идеи по улучшению языка C++ для обсуждения
https://cpp-ru.github.io/proposals
Creative Commons Zero v1.0 Universal
89 stars 0 forks source link

Вести синтаксический сахар для override #338

Closed apolukhin closed 3 years ago

apolukhin commented 3 years ago

Перенос предложения: голоса +0, -13 Автор идеи: Fihtangolz

Иногда напрягает писать полностью сигнатуру функции, так как override говорит что мы хотим перегрузить функцию и если нет нескольких функций с одним имянем, почему бы просто не сохратить записть до override funcName { / some code /}, тоже можно сделать для final

apolukhin commented 3 years ago

yndx-antoshkka, 6 августа 2018, 12:05 Такой код будет очень неудобно читать, т.к. имена параметров функций будут находиться в другом файле.

Ещё неудобнее будет рефакторить подобный код - если разработчик А в своём проекте изменит имена параметров функции базового класса, то сломается сборка вашего проекта, о котором человек А даже ничего не знает.

Ещё есть опасение, что подобный синтаксис может поломать существующий код. Если у кого-то в проекте есть класс с именем override, то запись override funcName {} перестанет быть объявлением переменной... ну или придётся долго и мучительно прорабатывать такие правила, чтобы код и не ломался, и предложенный функционал работал.

Fihtangolz, 11 августа 2018, 4:00 yndx-antoshkka, да я уже после публикации через минут 10 понял что хреновая идея, но нельзя так просто взять и отозвать предложение. Поэтому пусть будет. Хочеться меньше писать, но не выйдет пока нет zero const этого делать, ну исключая конечно шаблоны