I knew you'll have interesting feddback.

On Wednesday, 12 June 2013 at 15:33:13 UTC, Steven Schveighoffer wrote:
The one problem I see here is the case where you want to have Array mutate its data.


I admit that this won't solve the issue. But I don't know if this is an issue to be fair.

For example, let's say Array makes ptr and length private overloads opIndex AND opIndexAssign to prevent taking the the address of its data.


I'm not sure what is the use case. But that is clearly impossible with the solution I proposed.

Another issue here is, what if you don't want Array to be a template? That is, you want:

struct IntArray {
    size_t length;
    int *ptr;
}

How do you make this tail-const-able?


By making it a template. I'm also not sure what is the use case here, but still this is a limitation.

It's a very good start, and very close to the solution I have. I'm going to finish my article and post it hopefully next week.


Could you give a quick executive summary ?

Reply via email to