您当前的位置:首页 > IT编程 > C++
| C语言 | Java | VB | VC | python | Android | TensorFlow | C++ | oracle | 学术与代码 | cnn卷积神经网络 | gnn | 图像修复 | Keras | 数据集 | Neo4j | 自然语言处理 | 深度学习 | 医学CAD | 医学影像 | 超参数 | pointnet | pytorch | 异常检测 | Transformers | 情感分类 | 知识图谱 |

自学教程:C++ CONTAINER_REMOVE函数代码示例

51自学网 2021-06-01 20:04:01
  C++
这篇教程C++ CONTAINER_REMOVE函数代码示例写得很实用,希望能帮到您。

本文整理汇总了C++中CONTAINER_REMOVE函数的典型用法代码示例。如果您正苦于以下问题:C++ CONTAINER_REMOVE函数的具体用法?C++ CONTAINER_REMOVE怎么用?C++ CONTAINER_REMOVE使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。

在下文中一共展示了CONTAINER_REMOVE函数的30个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的C++代码示例。

示例1: delete_hotswap_row

intdelete_hotswap_row (SaHpiDomainIdT domain_id, SaHpiResourceIdT resource_id){  saHpiHotSwapTable_context *ctx;  oid hotswap_oid[HOTSWAP_INDEX_NR];  netsnmp_index hotswap_index;  int rc = AGENT_ERR_NOT_FOUND;  DEBUGMSGTL ((AGENT, "delete_hotswap_row (%d, %d). Entry/n",	       domain_id, resource_id));  hotswap_oid[0] = domain_id;  hotswap_oid[1] = resource_id;  // Possible more indexs?  hotswap_index.oids = (oid *) & hotswap_oid;  hotswap_index.len = HOTSWAP_INDEX_NR;  ctx = CONTAINER_FIND (cb.container, &hotswap_index);  if (ctx)    {      CONTAINER_REMOVE (cb.container, ctx);      saHpiHotSwapTable_delete_row (ctx);      rc = AGENT_ERR_NOERROR;    }  DEBUGMSGTL ((AGENT, "delete_hotswap_row. Exit (rc: %d)./n", rc));  return rc;}
开发者ID:openhpi1,项目名称:testrepo,代码行数:31,


示例2: _mfd_ipv4InterfaceTable_irreversible_commit

/** * @internal * commit irreversible actions */int_mfd_ipv4InterfaceTable_irreversible_commit(netsnmp_mib_handler *handler, netsnmp_handler_registration                                            *reginfo, netsnmp_agent_request_info                                            *agtreq_info,                                            netsnmp_request_info *requests){    ipv4InterfaceTable_rowreq_ctx *rowreq_ctx =        netsnmp_container_table_row_extract(requests);    DEBUGMSGTL(("internal:ipv4InterfaceTable:_mfd_ipv4InterfaceTable_irreversible:commit", "called/n"));    netsnmp_assert(NULL != rowreq_ctx);    /*     * check for and handle row creation/deletion     * and update column exist flags...     */    if (rowreq_ctx->rowreq_flags & MFD_ROW_DELETED) {        CONTAINER_REMOVE(ipv4InterfaceTable_if_ctx.container, rowreq_ctx);    } else {        if (rowreq_ctx->column_set_flags) {            rowreq_ctx->column_set_flags = 0;        }    }    return SNMP_ERR_NOERROR;}                               /* _mfd_ipv4InterfaceTable_irreversible_commit */
开发者ID:Nymphetaminer,项目名称:dsl-n55u,代码行数:31,


示例3: delete_watchdog_row

intdelete_watchdog_row (SaHpiDomainIdT domain_id,		     SaHpiResourceIdT resource_id, SaHpiWatchdogNumT num){  saHpiWatchdogTable_context *ctx;  oid index_oid[WATCHDOG_INDEX_NR];  netsnmp_index index;  int rc = AGENT_ERR_NOT_FOUND;  DEBUGMSGTL ((AGENT, "delete_watchdog_row (%d, %d, %d). Entry./n",	       domain_id, resource_id, num));  // Look at the MIB to find out what the indexs are  index_oid[0] = domain_id;  index_oid[1] = resource_id;  index_oid[2] = num;  // Possible more indexes?  index.oids = (oid *) & index_oid;  index.len = WATCHDOG_INDEX_NR;  ctx = CONTAINER_FIND (cb.container, &index);  if (ctx)    {      CONTAINER_REMOVE (cb.container, ctx);      saHpiWatchdogTable_delete_row (ctx);      watchdog_count = CONTAINER_SIZE (cb.container);      rc = AGENT_ERR_NOERROR;    }  DEBUGMSGTL ((AGENT, "delete_watchdog_row. Exit (rc: %d)./n", rc));  return rc;}
开发者ID:openhpi1,项目名称:testrepo,代码行数:32,


示例4: deleteContactRow

/*  * Removes the row indexed by userIndex and contactIndex, and free's up the * memory allocated to it.  If the row could not be found, then nothing is done. */void deleteContactRow(int userIndex, int contactIndex) {	openserSIPContactTable_context *theRow;	netsnmp_index indexToRemove;	oid indexToRemoveOID[2];	/* Form the OID Index of the row so we can search for it */	indexToRemoveOID[0] = userIndex;	indexToRemoveOID[1] = contactIndex;	indexToRemove.oids  = indexToRemoveOID;	indexToRemove.len   = 2;	theRow = CONTAINER_FIND(cb.container, &indexToRemove);	/* The ContactURI is shared memory, the index.oids was allocated from	 * pkg_malloc(), and theRow was made with the NetSNMP API which uses	 * malloc() */	if (theRow != NULL) {		CONTAINER_REMOVE(cb.container, &indexToRemove);		pkg_free(theRow->openserSIPContactURI);		pkg_free(theRow->index.oids);		free(theRow);	} }
开发者ID:UIKit0,项目名称:OpenSIPS,代码行数:29,


示例5: deleteRegUserRow

/* Removes an SNMP row indexed by userIndex, and frees the string and index it * pointed to. */void deleteRegUserRow(int userIndex) {		openserSIPRegUserTable_context *theRow;	netsnmp_index indexToRemove;	oid indexToRemoveOID;			indexToRemoveOID   = userIndex;	indexToRemove.oids = &indexToRemoveOID;	indexToRemove.len  = 1;	theRow = CONTAINER_FIND(cb.container, &indexToRemove);	/* The userURI is shared memory, the index.oids was allocated from	 * pkg_malloc(), and theRow was made with the NetSNMP API which uses	 * malloc() */	if (theRow != NULL) {		CONTAINER_REMOVE(cb.container, &indexToRemove);		pkg_free(theRow->openserSIPUserUri);		pkg_free(theRow->index.oids);		free(theRow);	}}
开发者ID:iamroger,项目名称:voip,代码行数:27,


示例6: delete_ThdPosHysteresis_row

intdelete_ThdPosHysteresis_row (SaHpiDomainIdT domain_id,			   SaHpiResourceIdT resource_id,			   SaHpiSensorNumT sensor_num){  saHpiSensorThdPosHysteresisTable_context *ctx;  oid index_oid[SENSOR_THD_INDEX_NR];  netsnmp_index sensor_reading_index;  int rc = AGENT_ERR_NOT_FOUND;  DEBUGMSGTL ((AGENT, "delete_ThdPosHysteresis_row (%d, %d, %d). Entry./n",	       domain_id, resource_id, sensor_num));  // Look at the MIB to find out what the indexs are  index_oid[0] = domain_id;  index_oid[1] = resource_id;  index_oid[2] = sensor_num;  // Possible more indexs?  sensor_reading_index.oids = (oid *) & index_oid;  sensor_reading_index.len = SENSOR_THD_INDEX_NR;  ctx = CONTAINER_FIND (cb.container, &sensor_reading_index);  if (ctx)    {      CONTAINER_REMOVE (cb.container, ctx);      saHpiSensorThdPosHysteresisTable_delete_row (ctx);      rc = AGENT_ERR_NOERROR;    }  DEBUGMSGTL ((AGENT, "delete_ThdPosHysteresis_row. Exit (rc: %d)./n", rc));  return rc;}
开发者ID:openhpi1,项目名称:testrepo,代码行数:33,


示例7: _mfd_dot11ConfTotalTrapGroupTable_post_request

/** * @internal * wrapper */static int_mfd_dot11ConfTotalTrapGroupTable_post_request(netsnmp_mib_handler *handler,                             netsnmp_handler_registration *reginfo,                             netsnmp_agent_request_info *agtreq_info,                             netsnmp_request_info *requests){    dot11ConfTotalTrapGroupTable_rowreq_ctx *rowreq_ctx;    int rc = dot11ConfTotalTrapGroupTable_post_request(dot11ConfTotalTrapGroupTable_if_ctx.user_ctx);    if (MFD_SUCCESS != rc) {        /*         * nothing we can do about it but log it         */        DEBUGMSGTL(("internal:dot11ConfTotalTrapGroupTable","error %d from "                    "dot11ConfTotalTrapGroupTable_post_request/n", rc));    }        /*     * if there are no errors, check for and handle row creation/deletion     */    rc = netsnmp_check_requests_error(requests);    if ((SNMP_ERR_NOERROR == rc) &&        (NULL !=         (rowreq_ctx = netsnmp_container_table_row_extract(requests)))) {        if (rowreq_ctx->rowreq_flags & MFD_ROW_CREATED) {            rowreq_ctx->rowreq_flags &= ~MFD_ROW_CREATED;            CONTAINER_INSERT(dot11ConfTotalTrapGroupTable_if_ctx.container, rowreq_ctx);        }        else if (rowreq_ctx->rowreq_flags & MFD_ROW_DELETED) {            CONTAINER_REMOVE(dot11ConfTotalTrapGroupTable_if_ctx.container, rowreq_ctx);            dot11ConfTotalTrapGroupTable_release_rowreq_ctx(rowreq_ctx);        }    }    return SNMP_ERR_NOERROR;} /* _mfd_dot11ConfTotalTrapGroupTable_post_request */
开发者ID:inibir,项目名称:daemongroup,代码行数:39,


示例8: _cert_map_remove

static void_cert_map_remove(certToTSN_entry *entry){    netsnmp_container *maps;    netsnmp_cert_map map;    if (NULL == entry)        return;    DEBUGMSGTL(("tlstmCertToTSNTable:map:remove", "pri %ld, fp %s/n",                entry->tlstmCertToTSNID, entry->fingerprint));    /** get current active maps */    maps = netsnmp_cert_map_container();    if (NULL == maps)        return;    map.priority = entry->tlstmCertToTSNID;    map.fingerprint = entry->fingerprint;    if (CONTAINER_REMOVE(maps, &map) != 0) {        snmp_log(LOG_ERR, "could not remove certificate map");    }    entry->map_flags = 0;}
开发者ID:RasmusKoldsoe,项目名称:performand.k70.2,代码行数:25,


示例9: sctpAssocRemAddrTable_delete_invalid

/* * Remove all entries from sctpAssocRemAddrTable, which are not marked as valid. * All valid entries are then marked as invalid (to delete them in next cache * load, if the entry is not updated).  */voidsctpAssocRemAddrTable_delete_invalid(netsnmp_container *remAddrTable){    netsnmp_container *to_delete = netsnmp_container_find("lifo");    CONTAINER_FOR_EACH(remAddrTable, sctpAssocRemAddrTable_collect_invalid,                       to_delete);    while (CONTAINER_SIZE(to_delete)) {        sctpAssocRemAddrTable_entry *entry = CONTAINER_FIRST(to_delete);        CONTAINER_REMOVE(remAddrTable, entry);        sctpAssocRemAddrTable_entry_free(entry);        CONTAINER_REMOVE(to_delete, NULL);    }    CONTAINER_FREE(to_delete);}
开发者ID:a5216652166,项目名称:rcp100,代码行数:21,


示例10: clear_domain_info_entry

/** * * @sessionid * * @return */SaErrorT clear_domain_info_entry(SaHpiDomainIdT domain_id){    SaErrorT rv = SA_OK;    netsnmp_index *row_idx;    saHpiDomainInfoTable_context *ctx;    DEBUGMSGTL ((AGENT, "clear_domain_info_entry, called/n"));    DEBUGMSGTL ((AGENT, "           domainId   [%d]/n", domain_id));    row_idx = CONTAINER_FIRST(cb.container);    if (row_idx) //At least one entry was found.    {        do {            ctx = CONTAINER_FIND(cb.container, row_idx);            row_idx = CONTAINER_NEXT(cb.container, row_idx);            if (ctx->index.oids[saHpiDomainId_INDEX] == domain_id) {                /* all conditions met remove row */                CONTAINER_REMOVE (cb.container, ctx);                saHpiDomainInfoTable_delete_row (ctx);                domain_info_entry_count =                    CONTAINER_SIZE (cb.container);                DEBUGMSGTL ((AGENT, "clear_domain_info_entry:"                             " found row: removing/n"));            }        } while (row_idx);    }    return rv;}
开发者ID:openhpi1,项目名称:testrepo,代码行数:39,


示例11: CONTAINER_REMOVE

/** * removes a row from the given table and returns it (no free's called) * * returns the row pointer itself on successful removing. *      or NULL on failure (bad arguments) */netsnmp_tdata_row *netsnmp_tdata_remove_row (netsnmp_tdata * table, netsnmp_tdata_row * row){    if (!row || !table)        return NULL;    CONTAINER_REMOVE (table->container, row);    return row;}
开发者ID:274914765,项目名称:C,代码行数:14,


示例12: netsnmp_swinst_entry_remove

voidnetsnmp_swinst_entry_remove(netsnmp_container * container,                            netsnmp_swinst_entry *entry){    DEBUGMSGTL(("swinst:container", "remove/n"));    if (!entry)        return;                 /* Nothing to remove */    CONTAINER_REMOVE(container, entry);}
开发者ID:duniansampa,项目名称:SigLog,代码行数:9,


示例13: cpqSasPhyDrvTable_removeEntry

/** remove a row from the table */voidcpqSasPhyDrvTable_removeEntry(netsnmp_container * container,                              cpqSasPhyDrvTable_entry * entry){    if (!entry)        return;                 /* Nothing to remove */    CONTAINER_REMOVE(container, entry);    if (entry)        SNMP_FREE(entry);       /* XXX - release any other internal resources */}
开发者ID:marker55,项目名称:hp-ams,代码行数:12,


示例14: snmpNotifyFilter_storage_remove

intsnmpNotifyFilter_storage_remove(snmpNotifyFilter_data_storage *data){    int     rc;    if (NULL == data)        return SNMPERR_GENERR;    DEBUGMSGTL(("internal:snmpNotifyFilter", "removing row/n"));    rc = CONTAINER_REMOVE(_container, data);    if (0 != rc)        return SNMPERR_GENERR;    return SNMPERR_SUCCESS;}
开发者ID:fenner,项目名称:net-snmp,代码行数:15,


示例15: _check_for_updates

/** * check entry for update */static void_check_for_updates(ipIfStatsTable_rowreq_ctx * rowreq_ctx,                   netsnmp_container *stats){    netsnmp_systemstats_entry *ifstats_entry;    /*     * check for matching entry. works because indexes are the same.     */    ifstats_entry = (netsnmp_systemstats_entry*)CONTAINER_FIND(stats, rowreq_ctx->data);    if (NULL == ifstats_entry) {        DEBUGMSGTL(("ipIfStatsTable:access",                    "updating missing entry/n"));        /*         * mark row as missing, so we can set discontinuity         * when it comes back.         *         * what else should we do? set refresh to 0? that's not quite right...         */        rowreq_ctx->known_missing = 1;    } else {        DEBUGMSGTL(("ipIfStatsTable:access",                    "updating existing entry/n"));        /*         * Check for changes & update         */        netsnmp_access_systemstats_entry_update(rowreq_ctx->data,                                                ifstats_entry);        /*         * set discontinuity if previously missing.         */        if (1 == rowreq_ctx->known_missing) {            rowreq_ctx->known_missing = 0;            rowreq_ctx->ipIfStatsDiscontinuityTime =                netsnmp_get_agent_uptime();            ipIfStatsTable_lastChange_set(netsnmp_get_agent_uptime());        }        /*         * remove entry from container         */        CONTAINER_REMOVE(stats, ifstats_entry);        netsnmp_access_systemstats_entry_free(ifstats_entry);    }}
开发者ID:liquidradio,项目名称:net-snmp,代码行数:51,


示例16: unregister_cb

/** remove a row from the table */static intunregister_cb(int major, int minor, void* serv, void* client){    sysORTable_entry *value;    netsnmp_iterator* it = CONTAINER_ITERATOR(table);    DEBUGMSGTL(("mibII/sysORTable/unregister_cb",                "unregister_cb(%d, %d, %p, %p)/n", major, minor, serv, client));    sysORLastChange = ((struct sysORTable*)(serv))->OR_uptime;    while ((value = (sysORTable_entry*)ITERATOR_NEXT(it)) && value->data != serv);    ITERATOR_RELEASE(it);    if(value) {	CONTAINER_REMOVE(table, value);	free(value);    }    return SNMP_ERR_NOERROR;}
开发者ID:duniansampa,项目名称:SigLog,代码行数:19,


示例17: clear_sensor_normal_max

/** *  * @domainId * @resourceId *  * @return  */SaErrorT clear_sensor_normal_max(SaHpiDomainIdT domainId,                               SaHpiResourceIdT resourceId){        SaErrorT rv = SA_OK;        netsnmp_index *row_idx;        saHpiSensorReadingNormalMaxTable_context *sen_norm_max_ctx;	DEBUGMSGTL ((AGENT, "clear_sensor_normal_max, called/n"));		DEBUGMSGTL ((AGENT, "           domainId   [%d]/n", domainId));		DEBUGMSGTL ((AGENT, "           resourceId [%d]/n", resourceId));        row_idx = CONTAINER_FIRST(cb.container);        if (row_idx) //At least one entry was found.        {                do {                        /* based on the found row_idx get the pointer   */                        /* to its context (row data)                    */                        sen_norm_max_ctx = CONTAINER_FIND(cb.container, row_idx);                        /* before we delete the context we should get the  */                        /* next row (context) if any before we delete this */                         /* one.                                            */                        row_idx = CONTAINER_NEXT(cb.container, row_idx);                        if ((sen_norm_max_ctx->index.oids[saHpiSenNormMaxDomainId_INDEX] ==                             domainId) &&                            (sen_norm_max_ctx->index.oids[saHpiSenNormMaxResourceId_INDEX] ==                             resourceId)) {                                /* all conditions met remove row */                                CONTAINER_REMOVE (cb.container, sen_norm_max_ctx);                                saHpiSensorReadingNormalMaxTable_delete_row (sen_norm_max_ctx);                                DEBUGMSGTL ((AGENT, "clear_sensor_normal_max: "                                                    "found row: removing/n"));                        }                } while (row_idx);        }         return rv;}
开发者ID:openhpi1,项目名称:testrepo,代码行数:51,


示例18: del_radiusAccClientExtTable

/** * Remove a client */voiddel_radiusAccClientExtTable(dm_id id){	netsnmp_index idx;	oid soid[1];	radiusAccClientExtTable_context *row;	if (!my_handler)		return;	idx.len = 1;	idx.oids = &soid[0];	soid[0] = id;	row = CONTAINER_FIND(cb.container, &idx);	if (row) {		CONTAINER_REMOVE(cb.container, row);		free(row);	}}
开发者ID:KanjiMonster,项目名称:mand,代码行数:23,


示例19: _check_entry_for_updates

/** * check entry for update */static void _check_entry_for_updates (ipDefaultRouterTable_rowreq_ctx * rowreq_ctx, void **magic){    netsnmp_container *defaultrouter_container = magic[0];    netsnmp_container *to_delete = (netsnmp_container *) magic[1];    /*     * check for matching entry using secondary index.     */    netsnmp_defaultrouter_entry *defaultrouter_entry = CONTAINER_FIND (defaultrouter_container, rowreq_ctx->data);    if (NULL == defaultrouter_entry)    {        DEBUGMSGTL (("ipDefaultRouterTable:access", "removing missing entry/n"));        if (NULL == to_delete)        {            magic[1] = to_delete = netsnmp_container_find ("lifo");            if (NULL == to_delete)                snmp_log (LOG_ERR, "couldn't create delete container/n");        }        if (NULL != to_delete)            CONTAINER_INSERT (to_delete, rowreq_ctx);    }    else    {        DEBUGMSGTL (("ipDefaultRouterTable:access", "updating existing entry/n"));        /*         * Check for changes & update         */        netsnmp_access_defaultrouter_entry_update (rowreq_ctx->data, defaultrouter_entry);        /*         * remove entry from ifcontainer         */        CONTAINER_REMOVE (defaultrouter_container, defaultrouter_entry);        netsnmp_access_defaultrouter_entry_free (defaultrouter_entry);    }}
开发者ID:274914765,项目名称:C,代码行数:43,


示例20: _check_entry_for_updates

/** * check entry for update */static void_check_entry_for_updates(ipAddressTable_rowreq_ctx * rowreq_ctx,                         void **magic){    netsnmp_container *ipaddress_container = (netsnmp_container*)magic[0];    netsnmp_container *to_delete           = (netsnmp_container*)magic[1];    /*     * check for matching entry using secondary index.     */    netsnmp_ipaddress_entry *ipaddress_entry = (netsnmp_ipaddress_entry*)        CONTAINER_FIND(ipaddress_container, rowreq_ctx->data);    if (NULL == ipaddress_entry) {        DEBUGMSGTL(("ipAddressTable:access", "removing missing entry/n"));        if (NULL == to_delete) {            magic[1] = to_delete = netsnmp_container_find("lifo");            if (NULL == to_delete)                snmp_log(LOG_ERR, "couldn't create delete container/n");        }        if (NULL != to_delete)            CONTAINER_INSERT(to_delete, rowreq_ctx);    } else {        DEBUGMSGTL(("ipAddressTable:access", "updating existing entry/n"));        /*         * Check for changes & update         */        if (netsnmp_access_ipaddress_entry_update(rowreq_ctx->data,                                                  ipaddress_entry) > 0)            rowreq_ctx->ipAddressLastChanged = netsnmp_get_agent_uptime();        /*         * remove entry from ifcontainer         */        CONTAINER_REMOVE(ipaddress_container, ipaddress_entry);        netsnmp_access_ipaddress_entry_free(ipaddress_entry);    }}
开发者ID:prak5192,项目名称:C_Project,代码行数:42,


示例21: delete_

voiddelete_(unsigned int clientreg, void *clientarg) {	netsnmp_index index;	netSnmpIETFWGTable_context *x;	netSnmpIETFWGTable_context blah;	oid	tmp[4];        tmp[0]=3; tmp[1]='A'; tmp[2] ='B'; tmp[3] ='C';        index.oids = tmp;        index.len = 4;		blah.index = index;		DEBUGMSGTL((AGENT,"Delete first some table."));	x = CONTAINER_FIND(cb.container, &blah);	DEBUGMSGTL((AGENT,"Found object [%X]/n",x));	if (x) {		DEBUGMSGTL((AGENT,"Deleteing object/n"));		CONTAINER_REMOVE(cb.container,x);		DEBUGMSGTL((AGENT,"Object deleted/n"));	}		}
开发者ID:openhpi1,项目名称:testrepo,代码行数:24,


示例22: delete_rdr_row

intdelete_rdr_row (SaHpiDomainIdT domain_id,		SaHpiResourceIdT resource_id,		SaHpiEntryIdT num, SaHpiRdrTypeT type){  saHpiRdrTable_context *ctx;  oid rdr_oid[RDR_INDEX_NR];  netsnmp_index rdr_index;  int rc = AGENT_ERR_NOT_FOUND;  DEBUGMSGTL ((AGENT, "delete_rdr_row (%d, %d, %d, %d). Entry./n",	       domain_id, resource_id, num, type));// Look at the MIB to find out what the indexs are  rdr_oid[0] = domain_id;  rdr_oid[1] = resource_id;  rdr_oid[2] = num;  rdr_oid[3] = type;  // Possible more indexs?  rdr_index.oids = (oid *) & rdr_oid;  rdr_index.len = RDR_INDEX_NR;  ctx = CONTAINER_FIND (cb.container, &rdr_index);  if (ctx)    {      CONTAINER_REMOVE (cb.container, ctx);      saHpiRdrTable_delete_row (ctx);      rdr_count = CONTAINER_SIZE (cb.container);      rc = AGENT_ERR_NOERROR;    }  DEBUGMSGTL ((AGENT, "delete_rdr_row. Exit (rc: %d)/n", rc));  return rc;}
开发者ID:openhpi1,项目名称:testrepo,代码行数:36,


示例23: domain_event_log_clear

/** *  * @session_id * @resource_id * @saHpiEventLogRowPointer * @aHpiEventLogRowPointer_len *  * @return  */SaErrorT domain_event_log_clear(SaHpiSessionIdT session_id,                                 SaHpiResourceIdT resource_id,                                  oid *saHpiEventLogRowPointer,                                 size_t saHpiEventLogRowPointer_len,				int modifyTotal){     	oid domain_evt_oid[DOMAIN_EVENT_LOG_INDEX_NR];	netsnmp_index domain_evt_idx;	netsnmp_index *domain_index;	saHpiDomainEventLogTable_context *domain_evt_ctx;		DR_XREF *dr_entry;	SaHpiDomainIdResourceIdArrayT dr_pair;	int column_len = 2;        DEBUGMSGTL ((AGENT, "domain_event_log_clear, called/n"));			DEBUGMSGTL ((AGENT, "Attempting to delete domain el row with the following indexes:/n"));        DEBUGMSGTL ((AGENT,"     Domain   [%ld]/n", saHpiEventLogRowPointer[saHpiDomainEventLogTable_oid_len + column_len]));        DEBUGMSGTL ((AGENT,"     Entry id [%ld]/n", saHpiEventLogRowPointer[saHpiDomainEventLogTable_oid_len + column_len + 1]));	DEBUGMSGTL ((AGENT,"     Severity [%s]/n",  oh_lookup_severity(						saHpiEventLogRowPointer[saHpiDomainEventLogTable_oid_len + column_len + 2]-1)));		/* BUILD oid for new row */		/* assign the number of indices */	domain_evt_idx.len = DOMAIN_EVENT_LOG_INDEX_NR;		/** Index saHpiDomainId is external */	domain_evt_oid[0] = saHpiEventLogRowPointer[saHpiDomainEventLogTable_oid_len + column_len];                /** Index saHpiDomainEventEntryId is external */		domain_evt_oid[1] = saHpiEventLogRowPointer[saHpiDomainEventLogTable_oid_len + column_len + 1];		/** Index saHpiEventSeverity is external */	domain_evt_oid[2] = saHpiEventLogRowPointer[saHpiDomainEventLogTable_oid_len + column_len + 2];		/* assign the indices to the index */	domain_evt_idx.oids = (oid *) & domain_evt_oid;				domain_index = CONTAINER_FIRST(cb.container);	domain_evt_ctx = CONTAINER_FIND(cb.container, &domain_evt_idx);		if (!domain_evt_ctx) {		DEBUGMSGTL ((AGENT, "domain_event_log_clear did not find a row to delete/n"));	}	else {				DEBUGMSGTL ((AGENT, "domain_event_log_clear found row to delete/n"));		CONTAINER_REMOVE(cb.container, domain_evt_ctx);		saHpiDomainEventLogTable_delete_row(domain_evt_ctx);				/* Reset the entry id for this domain/resource pair */		dr_pair.domainId_resourceId_arry[0] = saHpiEventLogRowPointer[saHpiDomainEventLogTable_oid_len + column_len];		dr_pair.domainId_resourceId_arry[1] = resource_id;		dr_entry = domain_resoruce_pair_lookup(&dr_pair, &dr_table); 				if (dr_entry == NULL) {			DEBUGMSGTL ((AGENT, 			"ERROR: domain_event_log_clear() domain_resoruce_pair_lookup returned NULL/n"));			return AGENT_ERR_INTERNAL_ERROR;		}			DEBUGMSGTL ((AGENT, 			"domain_event_log_clear() resetting entry_id to 0/n"));		dr_entry->entry_id = 0;					domain_event_log_entry_count = CONTAINER_SIZE (cb.container);				if (modifyTotal == MIB_TRUE) {				domain_event_log_entry_count_total--;		}				}		        return SA_OK;}
开发者ID:openhpi1,项目名称:testrepo,代码行数:82,


示例24: _check_interface_entry_for_updates

/** * check entry for update * */static void_check_interface_entry_for_updates(ifTable_rowreq_ctx * rowreq_ctx,                                   netsnmp_container *ifcontainer){    char            oper_changed = 0;    /*     * check for matching entry. We can do this directly, since     * both containers use the same index.     */    netsnmp_interface_entry *ifentry =        CONTAINER_FIND(ifcontainer, rowreq_ctx);#ifdef USING_IP_MIB_IPV4INTERFACETABLE_IPV4INTERFACETABLE_MODULE    /*     * give ipv4If table a crack at the entry     */    ipv4InterfaceTable_check_entry_for_updates(rowreq_ctx, ifentry);#endif#ifdef USING_IP_MIB_IPV6INTERFACETABLE_IPV6INTERFACETABLE_MODULE    /*     * give ipv6If table a crack at the entry     */    ipv6InterfaceTable_check_entry_for_updates(rowreq_ctx, ifentry);#endif    if (NULL == ifentry) {        /*         * if this is the first time we detected that this interface is         * missing, set admin/oper status down, and set last change.         *         * yyy-rks: when, if ever, would we consider an entry         * deleted (and thus need to update ifTableLastChanged)?         */        if (!rowreq_ctx->known_missing) {            DEBUGMSGTL(("ifTable:access", "updating missing entry/n"));            rowreq_ctx->known_missing = 1;            rowreq_ctx->data.ifAdminStatus = IFADMINSTATUS_DOWN;            if ((!(rowreq_ctx->data.ifentry->ns_flags & NETSNMP_INTERFACE_FLAGS_HAS_LASTCHANGE))                && (rowreq_ctx->data.ifOperStatus != IFOPERSTATUS_DOWN))                oper_changed = 1;            rowreq_ctx->data.ifOperStatus = IFOPERSTATUS_DOWN;        }    } else {        DEBUGMSGTL(("ifTable:access", "updating existing entry/n"));#ifdef USING_IF_MIB_IFXTABLE_IFXTABLE_MODULE        {            int rc = strcmp(rowreq_ctx->data.ifName,                            ifentry->name);            netsnmp_assert(rc == 0);        }#endif        /*         * if the interface was missing, but came back, clear the         * missing flag and set the discontinuity time. (if an os keeps         * persistent counters, tough cookies. We'll cross that          * bridge if we come to it).         */        if (rowreq_ctx->known_missing) {            rowreq_ctx->known_missing = 0;#ifdef USING_IF_MIB_IFXTABLE_IFXTABLE_MODULE            rowreq_ctx->data.ifCounterDiscontinuityTime =                netsnmp_get_agent_uptime();#endif        }        /*         * Check for changes, then update         */        if ((!(ifentry->ns_flags & NETSNMP_INTERFACE_FLAGS_HAS_LASTCHANGE))            && (rowreq_ctx->data.ifOperStatus != ifentry->oper_status))            oper_changed = 1;        netsnmp_access_interface_entry_copy(rowreq_ctx->data.ifentry,                                            ifentry);        /*         * remove entry from temporary ifcontainer         */        CONTAINER_REMOVE(ifcontainer, ifentry);        netsnmp_access_interface_entry_free(ifentry);    }    /*     * if ifOperStatus changed, update ifLastChange     */    if (oper_changed)        rowreq_ctx->data.ifLastChange = netsnmp_get_agent_uptime();}
开发者ID:grantc,项目名称:ingres-snmp-agent,代码行数:95,


示例25: delete_sensor_row

//.........这里部分代码省略.........					    ctx->resource_id,					    ctx->saHpiSensorIndex);	  if (rc != AGENT_ERR_NOERROR)	    DEBUGMSGTL ((AGENT,			 "call to delete_ReadingNormalMax failed with rc: %d/n",			 rc));	}      if (ctx->flags & SAHPI_SRF_NOMINAL)	{	  rc = delete_ReadingNominal_row (ctx->domain_id,					  ctx->resource_id,					  ctx->saHpiSensorIndex);	  if (rc != AGENT_ERR_NOERROR)	    DEBUGMSGTL ((AGENT,			 "call to delete_ReadingNominal failed with rc: %d/n",			 rc));	}      /*       * Threshold rows       */      if (ctx->saHpiSensorHasThresholds == MIB_TRUE)	{	  rc = delete_ThdLowCritical_row (ctx->domain_id,					  ctx->resource_id,					  ctx->saHpiSensorIndex);	  if (rc != AGENT_ERR_NOERROR)	    DEBUGMSGTL ((AGENT,			 "call to delete_ThdLowCritical failed with rc: %d/n",			 rc));	  rc = delete_ThdLowMajor_row (ctx->domain_id,				       ctx->resource_id,				       ctx->saHpiSensorIndex);	  if (rc != AGENT_ERR_NOERROR)	    DEBUGMSGTL ((AGENT,			 "call to delete_ThdLowMajor failed with rc: %d/n",			 rc));	  rc = delete_ThdLowMinor_row (ctx->domain_id,				       ctx->resource_id,				       ctx->saHpiSensorIndex);	  if (rc != AGENT_ERR_NOERROR)	    DEBUGMSGTL ((AGENT,			 "call to delete_ThdLowMinor failed with rc: %d/n",			 rc));	  rc = delete_ThdUpCritical_row (ctx->domain_id,					 ctx->resource_id,					 ctx->saHpiSensorIndex);	  if (rc != AGENT_ERR_NOERROR)	    DEBUGMSGTL ((AGENT,			 "call to delete_ThdUpCritical failed with rc: %d/n",			 rc));	  rc = delete_ThdUpMajor_row (ctx->domain_id,				      ctx->resource_id,				      ctx->saHpiSensorIndex);	  if (rc != AGENT_ERR_NOERROR)	    DEBUGMSGTL ((AGENT,			 "call to delete_ThdUpMajor failed with rc: %d/n",			 rc));	  rc = delete_ThdUpMinor_row (ctx->domain_id,				      ctx->resource_id,				      ctx->saHpiSensorIndex);	  if (rc != AGENT_ERR_NOERROR)	    DEBUGMSGTL ((AGENT,			 "call to delete_ThdUpMinor failed with rc: %d/n",			 rc));	  rc = delete_ThdPosHysteresis_row (ctx->domain_id,					    ctx->resource_id,					    ctx->saHpiSensorIndex);	  if (rc != AGENT_ERR_NOERROR)	    DEBUGMSGTL ((AGENT,			 "call to delete_ThdPosHysteresis failed with rc: %d/n",			 rc));	  rc = delete_ThdNegHysteresis_row (ctx->domain_id,					    ctx->resource_id,					    ctx->saHpiSensorIndex);	  if (rc != AGENT_ERR_NOERROR)	    DEBUGMSGTL ((AGENT,			 "call to delete_ThdNegHysteresis failed with rc: %d/n",			 rc));	}      CONTAINER_REMOVE (cb.container, ctx);      saHpiSensorTable_delete_row (ctx);      sensor_count = CONTAINER_SIZE (cb.container);      rc = AGENT_ERR_NOERROR;    }  DEBUGMSGTL ((AGENT, "delete_sensor_row. Exit (rc: %d)./n", rc));  return rc;}
开发者ID:openhpi1,项目名称:testrepo,代码行数:101,


示例26: ipv6InterfaceTable_check_entry_for_updates

/** * @internal * determine if we want a ifTable row in our container */voidipv6InterfaceTable_check_entry_for_updates(const ifTable_rowreq_ctx *                                           ift_rrc,                                           netsnmp_interface_entry *entry){    netsnmp_container *c = ipv6InterfaceTable_container_get();    ifTable_rowreq_ctx *ip6if_rrc;    int             changed = 0;    DEBUGMSGTL(("verbose:ipv6InterfaceTable:check_entry_for_updates",                "called/n"));    /*     * do we have a corresponding row?     */    ip6if_rrc = CONTAINER_FIND(c, ift_rrc);    if (NULL == ip6if_rrc) {        /*         * no corresponding row. should we have one?         */        if ((NULL != entry) &&            (entry->ns_flags & NETSNMP_INTERFACE_FLAGS_HAS_IPV6)) {            /*             * yes.             */            DEBUGMSGTL(("ipv6InterfaceTable:check_entry_for_updates",                        "inserted row for index %d/n", entry->index));            CONTAINER_INSERT(c, ift_rrc);            changed = 1;        }    } else {        /*         * found corresponding row. is it still applicable?         */        if ((NULL == entry) ||            (0 == (entry->ns_flags & NETSNMP_INTERFACE_FLAGS_HAS_IPV6))) {            /*             * no             */            DEBUGMSGTL(("ipv6InterfaceTable:check_entry_for_updates",                        "removed  row for index %d/n",                        ift_rrc->data.ifentry->index));            CONTAINER_REMOVE(c, ift_rrc);            changed = 1;        } else {            /*             * still applicable. anything changed?             */            if (/** retransmit */                   ((entry->                     ns_flags & NETSNMP_INTERFACE_FLAGS_HAS_V6_RETRANSMIT)                    && (entry->retransmit_v6 !=                        ift_rrc->data.ifentry->retransmit_v6)) ||                /** reasm */                   ((entry->                     ns_flags & NETSNMP_INTERFACE_FLAGS_HAS_V6_REASMMAX)                    && (entry->reasm_max_v6 !=                        ift_rrc->data.ifentry->reasm_max_v6)) ||                /** reachable time */                   ((entry->                     ns_flags & NETSNMP_INTERFACE_FLAGS_HAS_V6_REACHABLE)                    && (entry->reachable_time !=                        ift_rrc->data.ifentry->reachable_time)) ||                /** if id */                   ((entry->ns_flags & NETSNMP_INTERFACE_FLAGS_HAS_V6_IFID)                    &&                    ((entry->v6_if_id_len !=                      ift_rrc->data.ifentry->v6_if_id_len)                     || (0 !=                         memcmp(entry->v6_if_id,                                ift_rrc->data.ifentry->v6_if_id,                                entry->v6_if_id_len)))) ||                /** forwarding */                   ((entry->                     ns_flags & NETSNMP_INTERFACE_FLAGS_HAS_V6_FORWARDING)                    && (entry->forwarding_v6 !=                        ift_rrc->data.ifentry->forwarding_v6))) {                DEBUGMSGTL(("ipv6InterfaceTable:check_entry_for_updates",                            "row changed for index %d/n",                            ift_rrc->data.ifentry->index));                changed = 1;            }        }    }    /*     * if something changed, update table last changed     */    if (changed)        ipv6InterfaceTable_lastChange_set(netsnmp_get_agent_uptime());}
开发者ID:OPSF,项目名称:uClinux,代码行数:95,


示例27: process_set_group

static void process_set_group (netsnmp_index * o, void *c){    /* xxx-rks: should we continue processing after an error?? */    set_context *context = (set_context *) c;    netsnmp_request_group *ag = (netsnmp_request_group *) o;    int rc = SNMP_ERR_NOERROR;    switch (context->agtreq_info->mode)    {    case MODE_SET_RESERVE1:        /** -> SET_RESERVE2 || SET_FREE */        /*         * if not a new row, save undo info         */        if (ag->row_created == 0)        {            if (context->tad->cb->duplicate_row)                ag->undo_info = context->tad->cb->duplicate_row (ag->existing_row);            else                ag->undo_info = NULL;            if (NULL == ag->undo_info)            {                rc = SNMP_ERR_RESOURCEUNAVAILABLE;                break;            }        }        if (context->tad->cb->set_reserve1)            context->tad->cb->set_reserve1 (ag);        break;    case MODE_SET_RESERVE2:        /** -> SET_ACTION || SET_FREE */        if (context->tad->cb->set_reserve2)            context->tad->cb->set_reserve2 (ag);        break;    case MODE_SET_ACTION:        /** -> SET_COMMIT || SET_UNDO */        if (context->tad->cb->set_action)            context->tad->cb->set_action (ag);        break;    case MODE_SET_COMMIT:        /** FINAL CHANCE ON SUCCESS */        if (ag->row_created == 0)        {            /*             * this is an existing row, has it been deleted?             */            if (ag->row_deleted == 1)            {                DEBUGMSGT ((TABLE_ARRAY_NAME, "action: deleting row/n"));                if (CONTAINER_REMOVE (ag->table, ag->existing_row) != 0)                {                    rc = SNMP_ERR_COMMITFAILED;                    break;                }            }        }        else if (ag->row_deleted == 0)        {            /*             * new row (that hasn't been deleted) should be inserted             */            DEBUGMSGT ((TABLE_ARRAY_NAME, "action: inserting row/n"));            if (CONTAINER_INSERT (ag->table, ag->existing_row) != 0)            {                rc = SNMP_ERR_COMMITFAILED;                break;            }        }        if (context->tad->cb->set_commit)            context->tad->cb->set_commit (ag);        /** no more use for undo_info, so free it */        if (ag->undo_info)        {            context->tad->cb->delete_row (ag->undo_info);            ag->undo_info = NULL;        }#if 0        /* XXX-rks: finish row cooperative notifications         * if the table has requested it, send cooperative notifications         * for row operations.         */        if (context->tad->notifications)        {            if (ag->undo_info)            {                if (!ag->existing_row)                    netsnmp_monitor_notify (EVENT_ROW_DEL);                else                    netsnmp_monitor_notify (EVENT_ROW_MOD);//.........这里部分代码省略.........
开发者ID:274914765,项目名称:C,代码行数:101,


示例28: ipAddressTable_container_load

/** * load initial data * * TODO:350:M: Implement ipAddressTable data load * This function will also be called by the cache helper to load * the container again (after the container free function has been * called to free the previous contents). * * @param container container to which items should be inserted * * @retval MFD_SUCCESS              : success. * @retval MFD_RESOURCE_UNAVAILABLE : Can't access data source * @retval MFD_ERROR                : other error. * *  This function is called to load the index(es) (and data, optionally) *  for the every row in the data set. * * @remark *  While loading the data, the only important thing is the indexes. *  If access to your data is cheap/fast (e.g. you have a pointer to a *  structure in memory), it would make sense to update the data here. *  If, however, the accessing the data invovles more work (e.g. parsing *  some other existing data, or peforming calculations to derive the data), *  then you can limit yourself to setting the indexes and saving any *  information you will need later. Then use the saved information in *  ipAddressTable_row_prep() for populating data. * * @note *  If you need consistency between rows (like you want statistics *  for each row to be from the same time frame), you should set all *  data here. * */intipAddressTable_container_load(netsnmp_container *container){    netsnmp_container *ipaddress_container;    void           *tmp_ptr[2];    DEBUGMSGTL(("verbose:ipAddressTable:ipAddressTable_cache_load",                "called/n"));    /*     * TODO:351:M: |-> Load/update data in the ipAddressTable container.     * loop over your ipAddressTable data, allocate a rowreq context,     * set the index(es) [and data, optionally] and insert into     * the container.     */    ipaddress_container =        netsnmp_access_ipaddress_container_load(NULL,                                                NETSNMP_ACCESS_IPADDRESS_LOAD_ADDL_IDX_BY_ADDR);    /*     * we just got a fresh copy of interface data. compare it to     * what we've already got, and make any adjustments, saving     * missing addresses to be deleted.     */    tmp_ptr[0] = ipaddress_container->next;    tmp_ptr[1] = NULL;    CONTAINER_FOR_EACH(container, (netsnmp_container_obj_func *)                       _check_entry_for_updates, tmp_ptr);    /*     * now add any new interfaces     */    CONTAINER_FOR_EACH(ipaddress_container,                       (netsnmp_container_obj_func *) _add_new_entry,                       container);    /*     * free the container. we've either claimed each entry, or released it,     * so the access function doesn't need to clear the container.     */    netsnmp_access_ipaddress_container_free(ipaddress_container,                                            NETSNMP_ACCESS_IPADDRESS_FREE_DONT_CLEAR);    /*     * remove deleted addresses from table container     */    if (NULL != tmp_ptr[1]) {        netsnmp_container *tmp_container =            (netsnmp_container *) tmp_ptr[1];        ipAddressTable_rowreq_ctx *tmp_ctx;        /*         * this works because the tmp_container is a linked list,         * which can be used like a stack...         */        while (CONTAINER_SIZE(tmp_container)) {            /*             * get from delete list             */            tmp_ctx = (ipAddressTable_rowreq_ctx*)CONTAINER_FIRST(tmp_container);            /*             * release context, delete from table container             */            CONTAINER_REMOVE(container, tmp_ctx);            ipAddressTable_release_rowreq_ctx(tmp_ctx);            /*//.........这里部分代码省略.........
开发者ID:prak5192,项目名称:C_Project,代码行数:101,


示例29: clear_ctrl_digital

/** *  * @domainId * @resourceId *  * @return  */SaErrorT clear_ctrl_digital(SaHpiDomainIdT domainId,                              SaHpiResourceIdT resourceId){        SaErrorT rv = SA_OK;        netsnmp_index *row_idx;        saHpiCtrlDigitalTable_context *ctrl_ctx;	DEBUGMSGTL ((AGENT, "clear_ctrl_digital, called/n"));		DEBUGMSGTL ((AGENT, "           domainId   [%d]/n", domainId));		DEBUGMSGTL ((AGENT, "           resourceId [%d]/n", resourceId));        DR_XREF *dr_entry;        SaHpiDomainIdResourceIdArrayT dr_pair;        /* reset any existing indexEntry value */        dr_pair.domainId_resourceId_arry[0] = domainId;        dr_pair.domainId_resourceId_arry[1] = resourceId;        dr_entry = domain_resoruce_pair_lookup(&dr_pair, &dr_table);         if (dr_entry == NULL) {                DEBUGMSGTL ((AGENT,                 "INFO: clear_ctrl_digital() domain_resource_pair_get returned NULL/n"));                return SA_ERR_HPI_NOT_PRESENT;        } else {                dr_entry->entry_id = 0;        }        row_idx = CONTAINER_FIRST(cb.container);        if (row_idx) //At least one entry was found.        {                do {                        /* based on the found row_idx get the pointer   */                        /* to its context (row data)                    */                        ctrl_ctx = CONTAINER_FIND(cb.container, row_idx);                        /* before we delete the context we should get the  */                        /* next row (context) if any before we delete this */                         /* one.                                            */                        row_idx = CONTAINER_NEXT(cb.container, row_idx);                        if ((ctrl_ctx->index.oids[saHpiCtrlDigitalDomainId_INDEX] ==                             domainId) &&                            (ctrl_ctx->index.oids[saHpiCtrlDigitalResourceEntryId_INDEX] ==                             resourceId)) {                                /* all conditions met remove row */                                CONTAINER_REMOVE (cb.container, ctrl_ctx);                                saHpiCtrlDigitalTable_delete_row (ctrl_ctx);                                ctrl_digital_entry_count =                                         CONTAINER_SIZE (cb.container);                                DEBUGMSGTL ((AGENT, "clear_ctrl_digital: "                                                    "found row: removing/n"));                        }                } while (row_idx);        }         return rv;}
开发者ID:openhpi1,项目名称:testrepo,代码行数:68,


示例30: ipv4InterfaceTable_check_entry_for_updates

/** * @internal * determine if we want a ifTable row in our container */voidipv4InterfaceTable_check_entry_for_updates(const ifTable_rowreq_ctx *                                           ift_rrc,                                           netsnmp_interface_entry *entry){    netsnmp_container *c = ipv4InterfaceTable_container_get();    ifTable_rowreq_ctx *ip4if_rrc;    int             changed = 0;    DEBUGMSGTL(("verbose:ipv4InterfaceTable:check_entry_for_updates",                "called/n"));    /*     * do we have a corresponding row?     */    ip4if_rrc = CONTAINER_FIND(c, ift_rrc);    if (NULL == ip4if_rrc) {        /*         * no corresponding row. should we have one?         */        if ((NULL != entry) &&            (entry->ns_flags & NETSNMP_INTERFACE_FLAGS_HAS_IPV4)) {            /*             * yes.             */            DEBUGMSGTL(("ipv4InterfaceTable:check_entry_for_updates",                        "inserted row for %d/n", entry->index));            CONTAINER_INSERT(c, ift_rrc);            changed = 1;        }    } else {        /*         * found corresponding row. is it still applicable?         */        if ((NULL == entry) ||            (0 == (entry->ns_flags & NETSNMP_INTERFACE_FLAGS_HAS_IPV4))) {            /*             * no             */            DEBUGMSGTL(("ipv4InterfaceTable:check_entry_for_updates",                        "removed  row for %d/n",                        ift_rrc->data.ifentry->index));            CONTAINER_REMOVE(c, ift_rrc);            changed = 1;        } else {            /*             * still applicable. anything changed?             */            if ((entry->retransmit_v4 !=                 ift_rrc->data.ifentry->retransmit_v4) ||                (entry->reasm_max_v4 != ift_rrc->data.ifentry->reasm_max_v4)) {                DEBUGMSGTL(("ipv4InterfaceTable:check_entry_for_updates",                            "row changed for %d/n",                            ift_rrc->data.ifentry->index));                changed = 1;            }        }    }    /*     * if something changed, update table last changed     */    if (changed)        ipv4InterfaceTable_lastChange_set(netsnmp_get_agent_uptime());}
开发者ID:RasmusKoldsoe,项目名称:performand.k70.2,代码行数:69,



注:本文中的CONTAINER_REMOVE函数示例整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。


C++ CONTAINER_SIZE函数代码示例
C++ CONTAINER_INSERT函数代码示例
万事OK自学网:51自学网_软件自学网_CAD自学网自学excel、自学PS、自学CAD、自学C语言、自学css3实例,是一个通过网络自主学习工作技能的自学平台,网友喜欢的软件自学网站。