What does 'scope' mean for non-class types?
Stewart Gordon
smjg_1998 at yahoo.com
Sun May 30 14:40:06 PDT 2010
div0 wrote:
> -----BEGIN PGP SIGNED MESSAGE-----
> Hash: SHA1
>
> Lars T. Kyllingstad wrote:
>> In D2, what is the effect (if any) of 'scope' in the following situations?
>>
>> scope int a;
>
> Nothing
http://www.digitalmars.com/d/2.0/attribute.html#scope
"This means that the destructor for an object is automatically called
when the reference to it goes out of scope."
So there are two ways to interpret this:
- primitive types don't have destructors, so it shouldn't compile
- the destructor of a primitive type is nop, so the reason it has no
effect at the moment is
http://d.puremagic.com/issues/show_bug.cgi?id=2483
>> struct B { ... }
>> scope B b;
>
> Nothing, B's destructor will be called even without scope.
>
>> scope int[] c;
>
> c gets deleted when the scope ends. this applies to classes as well.
<snip>
What gets deleted - the array or the individual objects?
Stewart.
More information about the Digitalmars-d-learn
mailing list