|
Boost Users : |
Subject: Re: [Boost-users] [uuid] to string problem
From: Saygin Arkan (saygenius_at_[hidden])
Date: 2010-05-12 09:39:05
sorry once more, I was trying with char* since I encountered with the
previous problem,
I forgot to change it. Now it produces uuid, that's really great I was able
to make it at last =)
thanks for your contributions...
SA
On Wed, May 12, 2010 at 4:30 PM, Saygin Arkan <saygenius_at_[hidden]> wrote:
> To turn back to my problem =) , Here's my method:
>
>
> string GeneratorUtils::getRandomID(){
>
> random_generator gen;
> uuid u = gen();
>
> //string str = boost::lexical_cast<string>(u);
> string str = boost::lexical_cast<char*>(u);
>
> return str;
> }
>
> And here's my test code:
>
> int main(){
> cout << "SAYGIN" << endl;
>
> GeneratorUtils gen;
> cout << gen.getRandomID() << endl;
>
> return 0;
> }
>
>
> And here's the output:
> $ ~/DAIM_MPI_Correlation/utils$ g++ -c GeneratorUtils.cpp
> $ g++ -o test GeneratorUtils.cpp
> $ ./test
> SAYGIN
> terminate called after throwing an instance of
> 'boost::exception_detail::clone_impl<boost::exception_detail::error_info_injector<boost::bad_lexical_cast>
> >'
> what(): bad lexical cast: source type value could not be interpreted as
> target
> Aborted
>
> Do you have any idea?
>
>
>
>
> On Wed, May 12, 2010 at 4:05 PM, Thorsten Ottosen <nesotto_at_[hidden]>wrote:
>
>> Emil Dotchevski skrev:
>>
>> On Tue, May 11, 2010 at 6:00 AM, Andy Tompkins <atompkins_at_[hidden]>
>>> wrote:
>>>
>>>> Hmm, I haven't really given it much thought. Since it doesn't need to
>>>> be a member function, I would lean toward a standalone function. Do
>>>> any other libraries have a similar function? I would likely create:
>>>>
>>>> template <typename C, typename T, typename A>
>>>> std::basic_string<C, T, A> to_basic_string(boost::uuids::uuid const& u);
>>>>
>>>> as well as,
>>>>
>>>> std::string to_string(boost::uuids::uuid const& u);
>>>> std::wstring to_wstring(boost::uuids::uuid conts& u);
>>>>
>>>
>>> +1, unqualified call to to_string is how Boost Exception converts to
>>> string arbitrary objects stored in exception objects. If you use this
>>> form and someone adds a UUID to a boost::exception, it'll appear
>>> correctly in the output from boost::diagnostic_information.
>>>
>>
>> -1
>>
>> a to_string() member is IMO much preferred for simplicity and the
>> encapsulation perspective. Just like std::bitset<N>::to_string().
>>
>> There seem to be no standard in Boost for this :-(, e.g. filesystem uses
>> ::string(), format uses ::str().
>>
>> -Thorsten
>>
>> _______________________________________________
>> Boost-users mailing list
>> Boost-users_at_[hidden]
>> http://lists.boost.org/mailman/listinfo.cgi/boost-users
>>
>
>
>
> --
> H. Saygin Arkan
> Tampere University of Tech.
> CS / III - +358466646156
>
-- H. Saygin Arkan Tampere University of Tech. CS / III - +358466646156
Boost-users list run by williamkempf at hotmail.com, kalb at libertysoft.com, bjorn.karlsson at readsoft.com, gregod at cs.rpi.edu, wekempf at cox.net