其他分享
首页 > 其他分享> > protobuf中对消息内容进行赋值的不同方式(set_allocated_和mutable_)

protobuf中对消息内容进行赋值的不同方式(set_allocated_和mutable_)

作者:互联网

1.简单的消息内容直接用set_来赋值就行。

2.自己定义的复杂嵌套消息不能够通过简单的set_来赋值,可采取set_allocated和mutable_两种方式,但是二者的赋值方式是不同的。

3.使用set_allocated_,赋值的对象需要new出来,不能用局部的,因为这里保存的是对象的指针。当局部的对象被销毁后,就会报错。

4.使用mutable_,赋值时候,可以使用局部变量,因为在调用的时,内部做了new操作。

总结:简单赋值用set_,复杂赋值最好不要用set_allocated_,而要用mutable_。

标签:set,protobuf,对象,new,mutable,allocated,赋值
来源: https://blog.csdn.net/weixin_43795921/article/details/115474254