Bug in usage of associative array: dynamic array with string as a key
    Ali Çehreli 
    acehreli at yahoo.com
       
    Sat Jul  1 05:26:07 UTC 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
    
    
More information about the Digitalmars-d-learn
mailing list