Dynamically init a struct with values calculated from other values in the struct?

Steven Schveighoffer schveiguy at gmail.com
Sat Apr 4 15:52:34 UTC 2020


On 4/4/20 5:13 AM, Robert M. Münch wrote:
> I need to dynamically initialize a fixed number of entries of the form: 
> (start, length) and iterate over them.
> 
> Hence, I think a struct makes sense:
> 
> struct S {
>    s1, l1
> , s2, l2
> , s3, l3
> }
> 
> Now I need to initialize the values like this:
> 
> S myS = {s1:0, l1:10, s2:(2*s1), ...};
> 
> So I somehow would like to reference the prior values to initialize the 
> other members. I haven't found a way to do it. Is this possible at all? 

I don't think so.

> Or do I just init the struct empty and then set the entries?
> 

I recommend using a factory function or ctor.

-Steve


More information about the Digitalmars-d-learn mailing list