Ok, let me explain. I have a class let's call it PriceTicObjectSet. This 
class is a wrapper around protobuf class. This PriceTicObjectSet has member 
variables which are directly point to protobuf class variables - just 
setters and getters. Function toString is for convenience only, all it does 
it is dumps the content of  the instance of PriceTicObjectSet. Its 
implementation is like :
.....
if ( name_internal != NULL ) toReturn += ("name=" + name_internal->value() 
);
....

in other words toString() is just not essential here. We could just use 
debugger and see that after ParseFromString the object doesn't change at 
all.

Sorry for not being clear.

Thanks,

-Boris


On Wednesday, May 29, 2019 at 12:15:02 PM UTC-4, Adam Cozzette wrote:
>
> Could you provide some more details on what that function does and what 
> its outputting? Without that it is hard to know what the problem is.
>
> On Wed, May 29, 2019 at 8:04 AM Boris Pitel <[email protected] 
> <javascript:>> wrote:
>
>> toString is just a function which dumps the object ( PriceTicObjectSet ) 
>> - PriceTicObjectSet is just a very thin wrapper around protobuf class. I 
>> use toString to see the content of the message.
>>
>> -Boris
>>
>> On Wednesday, May 29, 2019 at 10:40:02 AM UTC-4, Adam Cozzette wrote:
>>>
>>> What does your toString() function do?
>>>
>>> On Wed, May 29, 2019 at 7:32 AM Boris Pitel <[email protected]> wrote:
>>>
>>>> Hello team,
>>>> I am new to C++ protobuf. library.
>>>> I experience following difficulty.
>>>> I have an pObj, i serialize it using SerializeToString, then as a test 
>>>> i try to deserialize the string using ParseFromString. I expect that after 
>>>> deserialization the object will contain the same data as original pObj. It 
>>>> doesn't happen. The new object contains nulls. The ParseFromString return 
>>>> true. Here is the pseudo-code:
>>>>
>>>> string body;
>>>> int n1 = pObj->_objectSetType.ByteSizeLong();
>>>> result = pObj->_objectSetType.SerializeToString(&body);
>>>> PriceTicObjectSet* pnewObj = new PriceTicObjectSet;
>>>> result = pnewObj->_objectSetType.ParseFromString(body);
>>>>
>>>> string dump1 = toString(pObj);
>>>> printf("Dump1:\n%s\n", dump1.c_str());
>>>> string dump2 = toString(pnewObj);
>>>> printf("Dump2:\n%s\n", dump2.c_str());
>>>>
>>>>
>>>> Again, I expect that after deserialization objects pObj and pnewObj 
>>>> contain same data. 
>>>> This issue puzzles me and it is really important to solve it.
>>>>
>>>> Please can somebody help me - probably I am doing something wrong.
>>>>
>>>> Thank you 
>>>>
>>>> Boris Pitel
>>>>
>>>> -- 
>>>> You received this message because you are subscribed to the Google 
>>>> Groups "Protocol Buffers" group.
>>>> To unsubscribe from this group and stop receiving emails from it, send 
>>>> an email to [email protected].
>>>> To post to this group, send email to [email protected].
>>>> Visit this group at https://groups.google.com/group/protobuf.
>>>> To view this discussion on the web visit 
>>>> https://groups.google.com/d/msgid/protobuf/dfae067f-71ec-4550-b18e-aa8aabab0af2%40googlegroups.com
>>>>  
>>>> <https://groups.google.com/d/msgid/protobuf/dfae067f-71ec-4550-b18e-aa8aabab0af2%40googlegroups.com?utm_medium=email&utm_source=footer>
>>>> .
>>>> For more options, visit https://groups.google.com/d/optout.
>>>>
>>>
>> On Wednesday, May 29, 2019 at 10:40:02 AM UTC-4, Adam Cozzette wrote:
>>>
>>> What does your toString() function do?
>>>
>>> On Wed, May 29, 2019 at 7:32 AM Boris Pitel <[email protected]> wrote:
>>>
>>>> Hello team,
>>>> I am new to C++ protobuf. library.
>>>> I experience following difficulty.
>>>> I have an pObj, i serialize it using SerializeToString, then as a test 
>>>> i try to deserialize the string using ParseFromString. I expect that after 
>>>> deserialization the object will contain the same data as original pObj. It 
>>>> doesn't happen. The new object contains nulls. The ParseFromString return 
>>>> true. Here is the pseudo-code:
>>>>
>>>> string body;
>>>> int n1 = pObj->_objectSetType.ByteSizeLong();
>>>> result = pObj->_objectSetType.SerializeToString(&body);
>>>> PriceTicObjectSet* pnewObj = new PriceTicObjectSet;
>>>> result = pnewObj->_objectSetType.ParseFromString(body);
>>>>
>>>> string dump1 = toString(pObj);
>>>> printf("Dump1:\n%s\n", dump1.c_str());
>>>> string dump2 = toString(pnewObj);
>>>> printf("Dump2:\n%s\n", dump2.c_str());
>>>>
>>>>
>>>> Again, I expect that after deserialization objects pObj and pnewObj 
>>>> contain same data. 
>>>> This issue puzzles me and it is really important to solve it.
>>>>
>>>> Please can somebody help me - probably I am doing something wrong.
>>>>
>>>> Thank you 
>>>>
>>>> Boris Pitel
>>>>
>>>> -- 
>>>> You received this message because you are subscribed to the Google 
>>>> Groups "Protocol Buffers" group.
>>>> To unsubscribe from this group and stop receiving emails from it, send 
>>>> an email to [email protected].
>>>> To post to this group, send email to [email protected].
>>>> Visit this group at https://groups.google.com/group/protobuf.
>>>> To view this discussion on the web visit 
>>>> https://groups.google.com/d/msgid/protobuf/dfae067f-71ec-4550-b18e-aa8aabab0af2%40googlegroups.com
>>>>  
>>>> <https://groups.google.com/d/msgid/protobuf/dfae067f-71ec-4550-b18e-aa8aabab0af2%40googlegroups.com?utm_medium=email&utm_source=footer>
>>>> .
>>>> For more options, visit https://groups.google.com/d/optout.
>>>>
>>> -- 
>> You received this message because you are subscribed to the Google Groups 
>> "Protocol Buffers" group.
>> To unsubscribe from this group and stop receiving emails from it, send an 
>> email to [email protected] <javascript:>.
>> To post to this group, send email to [email protected] 
>> <javascript:>.
>> Visit this group at https://groups.google.com/group/protobuf.
>> To view this discussion on the web visit 
>> https://groups.google.com/d/msgid/protobuf/d3e71b81-66db-48d9-8cc3-640aee92919a%40googlegroups.com
>>  
>> <https://groups.google.com/d/msgid/protobuf/d3e71b81-66db-48d9-8cc3-640aee92919a%40googlegroups.com?utm_medium=email&utm_source=footer>
>> .
>> For more options, visit https://groups.google.com/d/optout.
>>
>

-- 
You received this message because you are subscribed to the Google Groups 
"Protocol Buffers" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To post to this group, send email to [email protected].
Visit this group at https://groups.google.com/group/protobuf.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/protobuf/bb594c06-2d62-46b6-9f53-b65f26af4dd8%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to