net的类型都为st_net,但是查看this指针与其对应对象g_app.m_pMysql的st_net类型的结构不一样,请问这是怎么回事??(gdb) ptype g_app.m_pMysql->m_conn.net
type = struct st_net {
Vio *vio;
unsigned char *buff;
unsigned char *buff_end;
unsigned char *write_pos;
unsigned char *read_pos;
my_socket fd;
long unsigned int remain_in_buf;
long unsigned int length;
long unsigned int buf_length;
long unsigned int where_b;
long unsigned int max_packet;
long unsigned int max_packet_size;
unsigned int pkt_nr;
unsigned int compress_pkt_nr;
unsigned int write_timeout;
unsigned int read_timeout;
unsigned int retry_count;
int fcntl;
unsigned int *return_status;
unsigned char reading_or_writing;
char save_char;
my_bool unused0;
my_bool unused;
my_bool compress;
my_bool unused1;
unsigned char *query_cache_query;
unsigned int last_errno;
unsigned char error;
my_bool unused2;
my_bool return_errno;
char last_error[512];
char sqlstate[6];
void *extension;
}
(gdb) ptype this->m_conn.net
type = class st_net {
public:
Vio *vio;
unsigned char *buff;
unsigned char *buff_end;
unsigned char *write_pos;
unsigned char *read_pos;
my_socket fd;
long unsigned int max_packet;
long unsigned int max_packet_size;
unsigned int pkt_nr;
unsigned int compress_pkt_nr;
unsigned int write_timeout;
unsigned int read_timeout;
unsigned int retry_count;
int fcntl;
my_bool compress;
long unsigned int remain_in_buf;
long unsigned int length;
long unsigned int buf_length;
long unsigned int where_b;
unsigned int *return_status;
unsigned char reading_or_writing;
char save_char;
my_bool no_send_ok;
char last_error[512];
char sqlstate[6];
unsigned int last_errno;
unsigned char error;
gptr query_cache_query;
my_bool report_error;
my_bool return_errno;
}
type = struct st_net {
Vio *vio;
unsigned char *buff;
unsigned char *buff_end;
unsigned char *write_pos;
unsigned char *read_pos;
my_socket fd;
long unsigned int remain_in_buf;
long unsigned int length;
long unsigned int buf_length;
long unsigned int where_b;
long unsigned int max_packet;
long unsigned int max_packet_size;
unsigned int pkt_nr;
unsigned int compress_pkt_nr;
unsigned int write_timeout;
unsigned int read_timeout;
unsigned int retry_count;
int fcntl;
unsigned int *return_status;
unsigned char reading_or_writing;
char save_char;
my_bool unused0;
my_bool unused;
my_bool compress;
my_bool unused1;
unsigned char *query_cache_query;
unsigned int last_errno;
unsigned char error;
my_bool unused2;
my_bool return_errno;
char last_error[512];
char sqlstate[6];
void *extension;
}
(gdb) ptype this->m_conn.net
type = class st_net {
public:
Vio *vio;
unsigned char *buff;
unsigned char *buff_end;
unsigned char *write_pos;
unsigned char *read_pos;
my_socket fd;
long unsigned int max_packet;
long unsigned int max_packet_size;
unsigned int pkt_nr;
unsigned int compress_pkt_nr;
unsigned int write_timeout;
unsigned int read_timeout;
unsigned int retry_count;
int fcntl;
my_bool compress;
long unsigned int remain_in_buf;
long unsigned int length;
long unsigned int buf_length;
long unsigned int where_b;
unsigned int *return_status;
unsigned char reading_or_writing;
char save_char;
my_bool no_send_ok;
char last_error[512];
char sqlstate[6];
unsigned int last_errno;
unsigned char error;
gptr query_cache_query;
my_bool report_error;
my_bool return_errno;
}
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货