Head Const
Ola Fosheim Grøstad via Digitalmars-d
digitalmars-d at puremagic.com
Wed Feb 17 11:34:49 PST 2016
On Wednesday, 17 February 2016 at 19:03:25 UTC, Jonathan M Davis
wrote:
> As soon as you start using pointers or containers or pointers
> or anything like that, pretty quickly, you can get situations
> like where the container is const, but its elements aren't.
Yes, generic containers is an issue in C++. You can't just recast
the template parameter as const, as the internals could depend on
it not being const when the container was instantiated (if-test
on const in the constructor). This is a problem we get when
meta-programming becomes powerful enough.
The easy way out is to use a wrapper and implement the constness
in the wrapper (a class with just a pointer and methods).
Basically implement a reference type for container access.
More information about the Digitalmars-d
mailing list