MCO_RET mco_dict_struct( /*IN*/ mco_metadict_header_t * metadict,
/*IN*/ unsigned short dict_no,
/*IN*/ unsigned short struct_no,
/*OUT*/ mco_dict_struct_info_t * struct_info );
此函数返回数组中的索引和 class/structure number 引用的结构/类描述符。dict_no``metadict->entries[]``struct_no
| |
---|
MCO_S_OK | 已成功返回结构/类描述符 |
MCO_E_UDA_DICT_NOTFOUND | 词典未注册 |
MCO_E_UDA_STRUCT_NOTFOUND | 无效struct_no |
/* 应用程序代码片段 */
const char * dbname = "SimpleDb";
int main(int argc, char* argv[])
{
MCO_RET rc;
unsigned int dict_no = 0;
unsigned int count;
mco_metadict_header_t *header;
...
header = (mco_metadict_header_t *) malloc(size);
mco_metadict_init(header, size); /* initialize the metadict */
...
mco_dict_struct_count(header, dict_no, &count);
for (i = 0; i < count; ++i)
{
mco_dict_struct_info_t struct_info;
/* get structure descriptor */
rc = mco_dict_struct(header, dict_no, i, &struct_info);
if (struct_info.flags & MCO_DICT_SI_CLASS) {
printf("Class %d : %s\n", i, struct_info.name);
} else {
printf("Structure %d : %s\n", i, struct_info.name);
}
}
...
}