June 30, 2023
On 6/30/23 17:42, Cecil Ward wrote:

> https://dlang.org/spec/hash-map.html#testing_membership in the language
> docs, under associative arrays - 13.3 testing membership. Would anyone
> else care to try that example out as that might be quicker?

I tried it by

1) Putting all the code inside a 'void main()' function
2) Pasting the code from the top of that page

and it works:

void main() {
    int[string] aa;   // Associative array of ints that are
    // indexed by string keys.
    // The KeyType is string.
    aa["hello"] = 3;  // set value associated with key "hello" to 3
    int value = aa["hello"];  // lookup value from a key
    assert(value == 3);
    int* p;

    p = "hello" in aa;
    if (p !is null)
    {
        *p = 4;  // update value associated with key
        assert(aa["hello"] == 4);
    }
}

> the only substantive
> change being deleting the variable p

Do you mean this:

    aa.remove("hello");

That works too.

D's associative arrays have a few quirks but they work just fine. They are not buggy as it may be inferred from some of the posts here.

Ali

1 2
Next ›   Last »