Похожие чаты

Is it considered ok using shadowing in rust programs? I know

in many languages where shadowing is allowed it considered to be a bad practice, but I see that in The Rust Programming Language book it's being used in the first chapters and nothing said about whether it's bad or not.

3 ответов

28 просмотров

why would it be bad ?

Pavel- Автор вопроса
mohammad
why would it be bad ?

It makes it more difficult to read the code, because you need to check which variable exactly from those that you've declared you are using. E.g. you change a variable, you think that you change it in outer scope, but in fact you are changing another variable in inner scope with the same name. For example C++ has "default" warnings about using shadowing (and also has a rule for that in language core guidelines); go vet allows to enable such warning for golang projects, some IDEs give warnings for other languages

Pavel
It makes it more difficult to read the code, becau...

shadowing is fine in some cases, e.g. when you define a variable and then shadow it immediately with a variable of another type. but i agree that in the case you described it is indeed error-prone

Похожие вопросы

Обсуждают сегодня

а через ESC-код ?
Alexey Kulakov
29
30500 за редактор? )
Владимир
47
Чёт не понял, я ж правильной функцией воспользовался чтобы вывести отладочную информацию? но что-то она не ловится
notme
18
У меня есть функция где происходит это: write_bit(buffer, 1); write_bit(buffer, 0); write_bit(buffer, 1); write_bit(buffer, 1); write_bit(buffer, 1); w...
~
13
any reference of this implementation?
BitBuddha
29
Ⓐrtto, [4/23/24 7:02 PM] Please explain more fully how it is not working exactly, and what are the steps you are taking, and what error messages come or what happens. Ⓐrtto, ...
Ezza Kezza
2
sounds like people have lost their kaspa on tradeogre... does this mean tradeogre not trustworthy?
Ezza Kezza
15
Страшнейшая правда про списки ЦБ. С первых дней жизни P2P сферы, молодые человеки, начитавшись законодательной базы и "внутренних" документов, решили, что им противостоит сер...
Foxcool
3
Недавно Google Project Zero нашёл багу в SQLite с помощью LLM, о чём достаточно было шумно в определённых интернетах, которые сопровождались рассказами, что скоро всех "ибешни...
Alex Sherbakov
5
So much speculation in the last week. So much volatility in price. This is because Hedera has a GC that isn't using the network it's governing. Why aren't people asking why a...
Summit Seeker R
9
Карта сайта