Is there any real reason to use "const"?
Dom DiSc
dominikus at scherkl.de
Mon Jan 24 10:49:36 UTC 2022
On Monday, 24 January 2022 at 10:23:14 UTC, rempas wrote:
> The problem you described is why most language use a "string"
> type that is immutable (in case you point to a string literal)
> but they also have a way to allow you to modify a "string" type
> in case you have allocated memory. So it's always up to you.
>
You need const for functions that need to be able to take a
mutable or immutable variable as parameter. And as you don't know
which it is, you have to either propagate the constness or make a
mutable copy if you want to call a function (depending if the
called function has its parameter declared const or not). So
better to declare const wherever that is possible, to _avoid_
making useless copies.
I would NEVER EVER declare a variable const. It's always either
mutable or immutable. I would go as far as forbidding to declare
variables const, it's just confusing and useless. const is only
for parameters.
More information about the Digitalmars-d
mailing list