Add Element to list not Working

Ali Çehreli acehreli at yahoo.com
Sun Apr 1 23:07:40 PDT 2012


On 04/01/2012 10:45 PM, Chris Pons wrote:
> I'm trying to add an element to a list with insert but that doesn't seem
> to do anything at all. If I try using ~= it says that "Error: cannot
> append type Node to type SList!(Node). I'm pretty confused about using
> ~= because it works fine for arrays but apperantly not for lists.
>
> How do I add an element to a list?

import std.stdio;
import std.container;

void main()
{
     auto l = SList!int();

     l.insert(42);    // inserts front
     l.insert(43);    // this too

     assert(l == SList!int(43, 42));

     // inserts after the specified range (l[] is the entire list)
     l.insertAfter(l[], 44);

     assert(l == SList!int(43, 42, 44));

     // This doesn't work because SList.Range doesn't define opOpAssign!"~"
     // l[] ~= 45;
}

Ali


More information about the Digitalmars-d-learn mailing list