上图中这个 user 类接收多个参数,并且根据参数中传来的不同的 uid 来唯一标识。
接着这个 netloop() 是另一个类中的一个死循环,从 socket 中持续监听收到的消息,一旦有新的 login 消息(login 消息中带有 uid ),就根据消息中的 uid 及其他信息新实例化一个 user 类的对象。
当有多个 login 消息同时收到,那么就会同时新实例一个 user 对象,就会把原来的 user 对象(的指向)覆盖掉,那么我要怎么访问到之前的 user 对象呢?
你这里有个误区,多个login消息同时收到这里应该把他看作一个list,而不是单个msg_info,你应该在这里作文章
一个循环走完了,为啥还需要去访问被覆盖掉的变量。如果后续还有很费时的操作,你应该考虑多线程或者多进程,通过写queue,让后续进程继续来处理