1、MainWindow新增一个静态成员,比如说packet_cb(u_char *arg, ...),后面参数我省了,和pcap_loop的要求一致,静态成员
2、packet_cb实现:
{
return ((MainWindow*)arg)->ethernet_protocol_packet_callback()
}
3、ethernet_protocol_packet_callback第一个参数arg去掉,这里你应该没用上吧,实在有需要,在MainWindow里面加成员pcap_loop前赋值,ethernet_protocol_packet_callback里面访问那个成员
4、pcap_loop那里改成pcap_loop(pcap_handle, 1, packet_cb, (u_char*)this);
不喜欢c式指针转换写法的话,自行改成reinterpret_cast