Boost logo

Boost Users :

Subject: Re: [Boost-users] serialization basic question
From: Luis A. Montes (luis_at_[hidden])
Date: 2011-10-13 19:44:13


On Fri, 2011-10-14 at 07:20 +0800, Hazrat Pradipta Ranjali wrote:
> Hi Luis,
>
>
> could you post a simple code to demonstrate your problem?
>
Yes,
Actually the posted code on the tutorial does:
http://www.boost.org/doc/libs/1_47_0/libs/serialization/doc/tutorial.html#simplecase
my question is why does it have to be a const object on line 51. If you
take the const specifier the compilation fails (and on my program I
can't make them const). I found that if you add:

BOOST_CLASS_TRACKING(gps_position, boost::serialization::track_never)

then the compilation succeeds, but that sort of begs the question, why
the default behavior is not the most convenient one in this simple case?
(Paraphrasing "Object Tracking" on the documentation)

That's what I ended up doing in my code as well, but I'm not sure that's
the appropriate solution, and as I mentioned, the rationale on the
documentation does not seem to speak of that.

Thanks for your patience with a newbie,

>
> On Fri, Oct 14, 2011 at 02:47, Luis A. Montes <luis_at_[hidden]> wrote:
> Hi,
> I'm trying to use the serialization library and was having a
> compile
> error using MSVC 2005. So I decided to try and compile "A Very
> Simple
> Case" from the tutorial, and that of course works. But then I
> noticed
> that the example serializes a const object, that sort of is
> rather
> useless, so I removed the const specifier, and I got the same
> error that
> I was getting with my program, namely:
> warning C4099:
> 'boost::serialization::static_warning_impl<false>::STATIC_WARNING' :
> type name first seen using 'struct' now seen using 'class'
>
> I went googling for an answer and I found that I should look
> at the
> rationale on the docs, but the rationale
> (http://www.boost.org/doc/libs/1_47_0/libs/serialization/doc/rationale.html)
> doesn't seem at all relevant. I finally sort of guessed that I
> wanted
> was probably to modify the tracking behavior on my program
> (looking at
> the thread
> http://lists.boost.org/boost-users/2010/05/59107.php ). But
> my objects are not on the stack, so I'm not really sure. My
> class
> structure is a bit more complicated than the simple example,
> but my
> question basically is, what changes would be appropriate on
> the simple
> example so that it would compile for non-const objects?
>
> Thanks
>
>
> _______________________________________________
> Boost-users mailing list
> Boost-users_at_[hidden]
> http://lists.boost.org/mailman/listinfo.cgi/boost-users
>
>
> _______________________________________________
> Boost-users mailing list
> Boost-users_at_[hidden]
> http://lists.boost.org/mailman/listinfo.cgi/boost-users


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