我通过C源(pjsip)查看,我发现了这个结构。我不知道如何怀孕。
static struct user_agent
{
pjsip_module mod;
pj_pool_t *pool;
pjsip_endpoint *endpt;
pj_mutex_t *mutex;
pj_hash_table_t *dlg_table;
pjsip_ua_init_param param;
struct dlg_set free_dlgset_nodes;
} mod_ua =
{
{
NULL, NULL, /* prev, next. */
{ "mod-ua", 6 }, /* Name. */
-1, /* Id */
PJSIP_MOD_PRIORITY_UA_PROXY_LAYER, /* Priority */
&mod_ua_load, /* load() */
NULL, /* start() */
NULL, /* stop() */
&mod_ua_unload, /* unload() */
&mod_ua_on_rx_request, /* on_rx_request() */
&mod_ua_on_rx_response, /* on_rx_response() */
NULL, /* on_tx_request. */
NULL, /* on_tx_response() */
&mod_ua_on_tsx_state, /* on_tsx_state() */
}
};
答案 0 :(得分:2)
不是一个特别明确的问题,但我认为你遇到的问题是结构是在同一个语句中声明和使用的。怎么样:
struct user_agent {
....
}
static struct user_agent mod_ua = ....
那更清楚吗?
ķ
答案 1 :(得分:0)
如果没有结构的定义,很难确定,但我认为正在发生的事情是mod
成员(类型为pjsip_module
)正在被初始化,而其他成员正在被{ {1}}未明确初始化(这意味着它们将被设置为零,因为这是在初始化某些成员而不是其他成员时发生的情况)。内套括号是线索。看看mod_ua
的定义 - 它是否与您拥有的值相匹配?