$include_dir="/home/hyper-archives/boost/include"; include("$include_dir/msg-header.inc") ?>
Subject: Re: [boost] interprocess with unordered_map
From: Ion Gaztañaga (igaztanaga_at_[hidden])
Date: 2012-03-15 18:53:46
El 15/03/2012 23:18, Olaf van der Spek escribió:
> 2012/3/15 Ion Gaztañaga<igaztanaga_at_[hidden]>:
>> El 15/03/2012 3:14, Joel Young escribió:
>>>
>>> Can the interprocess::basic_string be modified to allow these conversions?
>>>
>>> I hate having to do:
>>>
>>> key_val = "fruitcake";
>>> db.find(key_val);
>>
>>
>> interprocess::basic_string is now boost::container::basic_string, which
>> follows std::basic_string interface. And you always need an allocator to
>> place the string in shared memory. I don' think it could be implicitly
>> constructible from char* or std::string.
>
> But there's no (good) reason for the input to be required to be in
> shared memory.
A shared memory allocator is designed to allocate from a managed shared
memory segment. And this requires a base address of that shared memory
segment . And even with std::string you need to build a temporary string
to compare it with the ones stored in the container.
Do you have any proposal or alternative idea?
Ion