- 01
- 02
- 03
- 04
- 05
- 06
- 07
- 08
- 09
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
- 27
- 28
- 29
mixin template GenerateAutoDispose()
{
void dispose()
{
foreach_reverse(i,t;this.tupleof)
{
static if(staticIndexOf!(auto_dispose,__traits(getAttributes, this.tupleof[i])) != -1)
{
static if(isArray!(typeof(t)))
{
foreach(t1;t)
{
if(t1 !is null)
{
t1.dispose();
}
}
}
else
{
if(t !is null)
{
t.dispose();
}
}
}
}
}
}
Если у авторов языка действительно была задумка заменить C++, то она имела фундаментальный недостаток в виде сборщика мусора.