get()成员函数
.get()的作用:用于返回shared_ptr智能指针中保存/指向的对象指针(裸指针)。
注意①:请务必小心使用get()函数,如果该shared_ptr智能指针释放了所指向的对象(内存),那么这个get函数返回的裸指针也会给释放掉(变得毫无意义)!
当我们用一个字节流string来接受一段数据,并把这个string用shared_ptr进行维护时,如果想对该数据进行地址偏移来分析,那我们就需要用.get()函数返回对象指针,因为shared_ptr是个类没有对+进行重载,直接+offset会报错。但是直接用.get()然后转换成char*来进行分析,会发现offset无法对上预期的字节,所以还要对其进行下面操作进行处理: