The Thermopylae excerpt of TDPL available online

Andrei Alexandrescu SeeWebsiteForEmail at erdani.org
Fri Oct 30 07:47:37 PDT 2009


Saaa wrote:
> Could anybody clear these up for me?
> 
>> p16. Is there anything other than the random values, unsafe about void 
>> assignment?

I'd put your feedback on my pile of things to do, but now that you ask, 
I made this change to the incriminated paragraph:

===========
Such  uninitialized arrays  are particularly  useful for  large arrays
that serve  as temporary buffers.   An uninitialized integral  may not
cause  too   much  harm,  but  uninitialized  values   of  types  with
indirections (such as arrays themselves) are unsafe.
===========

>> p18. What is unsafe about implicit conversion of static to dynamic array?
>>        Meaning getting a dynamic array pointing to a stack allocated 
>> array.
>>        Any operation changing its size could copy the array to the heap. 
>> What am I missing

T[] fun() { T[10] a; return a; }
...
auto x = fun(); // gained access to recycled stack memory

There's no change in size there.

>> p20. 10 int take up 40 words?

The example given has a per-row payload of 10 ints, i.e. 40 words.


Andrei



More information about the Digitalmars-d mailing list