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

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

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

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

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

示例1: wxT

pgObject *pgSchemaBase::Refresh(ctlTree *browser, const wxTreeItemId item){	pgObject *schema = 0;	pgCollection *coll = browser->GetParentCollection(item);	if (coll)	{		if (coll->IsCollectionForType(PGM_CATALOG))			schema = catalogFactory.CreateObjects(coll, 0, wxT(" WHERE nsp.oid=") + GetOidStr() + wxT("/n"));		else			schema = schemaFactory.CreateObjects(coll, 0, wxT(" WHERE nsp.oid=") + GetOidStr() + wxT("/n"));	}	return schema;}
开发者ID:KrisShannon,项目名称:pgadmin3,代码行数:14,


示例2: wxT

pgObject *pgRole::Refresh(ctlTree *browser, const wxTreeItemId item){	pgObject *role = 0;	pgCollection *coll = browser->GetParentCollection(item);	if (coll)	{		if (coll->GetServer()->GetConnection()->BackendMinimumVersion(8, 5))			role = loginRoleFactory.CreateObjects(coll, 0, wxT("/n WHERE tab.oid=") + GetOidStr());		else			role = loginRoleFactory.CreateObjects(coll, 0, wxT("/n WHERE oid=") + GetOidStr());	}	return role;}
开发者ID:GHnubsST,项目名称:pgadmin3,代码行数:14,


示例3: wxLogInfo

void pgTablespace::ShowStatistics(frmMain *form, ctlListView *statistics){	if (statistics)	{		if (GetConnection()->HasFeature(FEATURE_SIZE))		{			wxLogInfo(wxT("Displaying statistics for %s"), GetTypeName().c_str());			// Add the statistics view columns			CreateListColumns(statistics, _("Statistic"), _("Value"));			pgSet *stats = GetConnection()->ExecuteSet(			                   wxT("SELECT pg_size_pretty(pg_tablespace_size(") + GetOidStr() + wxT(")) AS ") + qtIdent(_("Tablespace Size")));			if (stats)			{				int col;				for (col = 0 ; col < stats->NumCols() ; col++)				{					if (!stats->ColName(col).IsEmpty())						statistics->AppendItem(stats->ColName(col), stats->GetVal(col));				}				delete stats;			}		}	}}
开发者ID:Joe-xXx,项目名称:pgadmin3,代码行数:27,


示例4: GetConnection

void pgTablespace::ShowDependents(frmMain *form, ctlListView *referencedBy, const wxString &where){	form->StartMsg(_(" Retrieving tablespace usage"));	referencedBy->ClearAll();	referencedBy->AddColumn(_("Type"), 60);	referencedBy->AddColumn(_("Database"), 80);	referencedBy->AddColumn(_("Name"), 300);	wxArrayString dblist;	pgSet *set = GetConnection()->ExecuteSet(	                 wxT("SELECT datname, datallowconn, dattablespace/n")	                 wxT("  FROM pg_database db/n")	                 wxT(" ORDER BY datname"));	if (set)	{		while (!set->Eof())		{			wxString datname = set->GetVal(wxT("datname"));			if (set->GetBool(wxT("datallowconn")))				dblist.Add(datname);			OID oid = set->GetOid(wxT("dattablespace"));			if (oid == GetOid())				referencedBy->AppendItem(databaseFactory.GetIconId(), _("Database"), datname);			set->MoveNext();		}		delete set;	}	FillOwned(form->GetBrowser(), referencedBy, dblist,	          wxT("SELECT cl.relkind, COALESCE(cin.nspname, cln.nspname) as nspname, COALESCE(ci.relname, cl.relname) as relname, cl.relname as indname/n")	          wxT("  FROM pg_class cl/n")	          wxT("  JOIN pg_namespace cln ON cl.relnamespace=cln.oid/n")	          wxT("  LEFT OUTER JOIN pg_index ind ON ind.indexrelid=cl.oid/n")	          wxT("  LEFT OUTER JOIN pg_class ci ON ind.indrelid=ci.oid/n")	          wxT("  LEFT OUTER JOIN pg_namespace cin ON ci.relnamespace=cin.oid,/n")	          wxT("       pg_database/n")	          wxT(" WHERE datname = current_database()/n")	          wxT("   AND (cl.reltablespace = ") + GetOidStr() + wxT("/n")	          wxT("        OR (cl.reltablespace=0 AND dattablespace = ") + GetOidStr() + wxT("))/n")	          wxT(" ORDER BY 1,2,3"));	form->EndMsg(set != 0);}
开发者ID:Joe-xXx,项目名称:pgadmin3,代码行数:47,


示例5: wxT

pgObject *pgType::Refresh(ctlTree *browser, const wxTreeItemId item){	pgObject *type = 0;	pgCollection *coll = browser->GetParentCollection(item);	if (coll)		type = typeFactory.CreateObjects(coll, 0, wxT("/n   AND t.oid=") + GetOidStr());	return type;}
开发者ID:KrisShannon,项目名称:pgadmin3,代码行数:9,


示例6: wxT

pgObject *pgRule::Refresh(ctlTree *browser, const wxTreeItemId item){	pgObject *rule = 0;	pgCollection *coll = browser->GetParentCollection(item);	if (coll)		rule = ruleFactory.CreateObjects(coll, 0, wxT("/n   AND rw.oid=") + GetOidStr());	return rule;}
开发者ID:KrisShannon,项目名称:pgadmin3,代码行数:9,


示例7: wxT

pgObject *pgForeignTable::Refresh(ctlTree *browser, const wxTreeItemId item){	pgObject *ft = 0;	pgCollection *coll = browser->GetParentCollection(item);	if (coll)		ft = foreignTableFactory.CreateObjects(coll, 0, wxT("/n   AND c.oid=") + GetOidStr());	return ft;}
开发者ID:zr40,项目名称:pgadmin3-light,代码行数:9,


示例8: wxT

pgObject *pgCatalogObject::Refresh(ctlTree *browser, const wxTreeItemId item){	pgObject *catalog = 0;	pgCollection *parent = (pgCollection *)browser->GetItemData(browser->GetItemParent(item));	if (parent)		catalog = catalogObjectFactory.CreateObjects(parent, 0, wxT("/n AND c.oid=") + GetOidStr());	return catalog;}
开发者ID:aiht,项目名称:pgadmin3,代码行数:9,


示例9: wxT

pgObject *pgTextSearchParser::Refresh(ctlTree *browser, const wxTreeItemId item){	pgObject *parser = 0;	pgCollection *coll = browser->GetParentCollection(item);	if (coll)		parser = textSearchParserFactory.CreateObjects(coll, 0, wxT("/n   AND prs.oid=") + GetOidStr());	return parser;}
开发者ID:Joe-xXx,项目名称:pgadmin3,代码行数:9,


示例10: wxT

pgObject *pgTablespace::Refresh(ctlTree *browser, const wxTreeItemId item){	pgObject *tablespace = 0;	pgCollection *coll = browser->GetParentCollection(item);	if (coll)		tablespace = tablespaceFactory.CreateObjects(coll, 0, wxT("/n WHERE ts.oid=") + GetOidStr());	return tablespace;}
开发者ID:Joe-xXx,项目名称:pgadmin3,代码行数:9,


示例11: wxT

pgObject *slCluster::Refresh(ctlTree *browser, const wxTreeItemId item){	pgObject *cluster = 0;	pgCollection *coll = browser->GetParentCollection(item);	if (coll)		cluster = slClusterFactory.CreateObjects(coll, 0, wxT(" WHERE nsp.oid=") + GetOidStr() + wxT("/n"));	return cluster;}
开发者ID:SokilV,项目名称:pgadmin3,代码行数:9,


示例12: wxT

pgObject *edbResourceGroup::Refresh(ctlTree *browser, const wxTreeItemId item){	pgObject *group = 0;	pgCollection *coll = browser->GetParentCollection(item);	if (coll)		group = resourceGroupFactory.CreateObjects(coll, 0, wxT("/n WHERE oid=") + GetOidStr());	return group;}
开发者ID:GHnubsST,项目名称:pgadmin3,代码行数:9,


示例13: wxT

pgObject *pgExtension::Refresh(ctlTree *browser, const wxTreeItemId item){	pgObject *language = 0;	pgCollection *coll = browser->GetParentCollection(item);	if (coll)		language = extensionFactory.CreateObjects(coll, 0, wxT("/n   AND x.oid=") + GetOidStr());	return language;}
开发者ID:SokilV,项目名称:pgadmin3,代码行数:9,


示例14: wxT

pgObject *pgOperator::Refresh(ctlTree *browser, const wxTreeItemId item){	pgObject *oper = 0;	pgCollection *coll = browser->GetParentCollection(item);	if (coll)		oper = operatorFactory.CreateObjects(coll, 0, wxT("/n   AND op.oid=") + GetOidStr());	return oper;}
开发者ID:GHnubsST,项目名称:pgadmin3,代码行数:9,


示例15: wxT

pgObject *pgSequence::Refresh(ctlTree *browser, const wxTreeItemId item){	pgObject *sequence = 0;	pgCollection *coll = browser->GetParentCollection(item);	if (coll)		sequence = sequenceFactory.CreateObjects(coll, 0, wxT("/n   AND cl.oid=") + GetOidStr());	return sequence;}
开发者ID:gleu,项目名称:pgadmin3,代码行数:9,


示例16: wxT

pgObject *gpResQueue::Refresh(ctlTree *browser, const wxTreeItemId item){	pgObject *queue = 0;	pgCollection *coll = browser->GetParentCollection(item);	if (coll)		queue = resQueueFactory.CreateObjects(coll, 0, wxT("/n WHERE oid=") + GetOidStr());	return queue;}
开发者ID:kleopatra999,项目名称:pgadmin3,代码行数:9,


示例17: wxT

pgObject *pgForeignServer::Refresh(ctlTree *browser, const wxTreeItemId item){	pgObject *fs = 0;	pgCollection *coll = browser->GetParentCollection(item);	if (coll)		fs = foreignServerFactory.CreateObjects(coll, 0, wxT(" AND srv.oid=") + GetOidStr());	return fs;}
开发者ID:SokilV,项目名称:pgadmin3,代码行数:9,


示例18: wxT

pgObject *pgCast::Refresh(ctlTree *browser, const wxTreeItemId item){	pgObject *cast = 0;	pgCollection *coll = browser->GetParentCollection(item);	if (coll)		cast = castFactory.CreateObjects(coll, 0, wxT(" WHERE ca.oid=") + GetOidStr());	return cast;}
开发者ID:kleopatra999,项目名称:pgadmin3,代码行数:10,


示例19: wxT

pgObject *pgCheck::Refresh(ctlTree *browser, const wxTreeItemId item){	pgObject *check = 0;	pgCollection *coll = browser->GetParentCollection(item);	if (coll)		check = checkFactory.CreateObjects(coll, 0, wxT("/n   AND c.oid=") + GetOidStr());	return check;}
开发者ID:kleopatra999,项目名称:pgadmin3,代码行数:10,


示例20: wxT

pgObject *pgDomain::Refresh(ctlTree *browser, const wxTreeItemId item){    pgObject *domain = 0;    pgCollection *coll = browser->GetParentCollection(item);    if (coll)        domain = domainFactory.CreateObjects(coll, 0, wxT("   AND d.oid=") + GetOidStr() + wxT("/n"));    return domain;}
开发者ID:GHnubsST,项目名称:pgadmin3,代码行数:10,


示例21: wxT

pgObject *gpExtTable::Refresh(ctlTree *browser, const wxTreeItemId item){	pgObject *extTable = 0;	pgCollection *coll = browser->GetParentCollection(item);	if (coll)	{		extTable = extTableFactory.CreateObjects(coll, 0, wxT("/n   AND c.oid=") + GetOidStr());	}	return extTable;}
开发者ID:kleopatra999,项目名称:pgadmin3,代码行数:11,


示例22: wxT

pgObject *pgView::Refresh(ctlTree *browser, const wxTreeItemId item){	pgObject *view = 0;	pgCollection *coll = browser->GetParentCollection(item);	if (coll)	{		// OIDs may change in EDB which allows the returned column set to be changed.		if (GetConnection()->EdbMinimumVersion(8, 0))			view = viewFactory.CreateObjects(coll, 0, wxT("/n   AND c.relname=") + GetConnection()->qtDbString(GetName()));		else			view = viewFactory.CreateObjects(coll, 0, wxT("/n   AND c.oid=") + GetOidStr());	}	return view;}
开发者ID:FabianCollaguazo,项目名称:pgadmin3,代码行数:15,


示例23: set

wxString pgView::GetCols(ctlTree *browser, size_t indent, wxString &QMs, bool withQM){	wxString sql;	wxString line;	int colcount = 0;	pgSetIterator set(GetConnection(),	                  wxT("SELECT attname/n")	                  wxT("  FROM pg_attribute/n")	                  wxT(" WHERE attrelid=") + GetOidStr() + wxT(" AND attnum>0/n")	                  wxT(" ORDER BY attnum"));	while (set.RowsLeft())	{		if (colcount++)		{			line += wxT(", ");			QMs += wxT(", ");		}		if (line.Length() > 60)		{			if (!sql.IsEmpty())			{				sql += wxT("/n") + wxString(' ', indent);			}			sql += line;			line = wxEmptyString;			QMs += wxT("/n") + wxString(' ', indent);		}		line += qtIdent(set.GetVal(0));		if (withQM)			line += wxT("=?");		QMs += wxT("?");	}	if (!line.IsEmpty())	{		if (!sql.IsEmpty())			sql += wxT("/n") + wxString(' ', indent);		sql += line;	}	return sql;}
开发者ID:FabianCollaguazo,项目名称:pgadmin3,代码行数:45,


示例24: ExecuteSet

void pgTrigger::ReadColumnDetails(){	if (!expandedKids && GetLanguage() != wxT("edbspl"))	{		expandedKids = true;		if (GetConnection()->BackendMinimumVersion(8, 5))		{			pgSet *res = ExecuteSet(			                 wxT("SELECT attname/n")			                 wxT("FROM pg_attribute,/n")			                 wxT("(SELECT tgrelid, unnest(tgattr) FROM pg_trigger/n")			                 wxT(" WHERE oid=") + GetOidStr() + wxT(") AS columns(tgrelid, colnum)/n")			                 wxT("WHERE colnum=attnum AND tgrelid=attrelid"));			// Allocate memory to store column def			if (res->NumRows() > 0) columnList.Alloc(res->NumRows());			long i = 1;			columns = wxT("");			quotedColumns = wxT("");			while (!res->Eof())			{				if (i > 1)				{					columns += wxT(", ");					quotedColumns += wxT(", ");				}				columns += res->GetVal(wxT("attname"));				quotedColumns += qtIdent(res->GetVal(wxT("attname")));				columnList.Add(res->GetVal(wxT("attname")));				i++;				res->MoveNext();			}		}		else		{			columns = wxT("");			quotedColumns = wxT("");		}	}}
开发者ID:zr40,项目名称:pgadmin3-light,代码行数:45,


示例25: wxLogInfo

void pgSequence::ShowStatistics(frmMain *form, ctlListView *statistics){    wxLogInfo(wxT("Displaying statistics for sequence on ") +GetSchema()->GetIdentifier());    // Add the statistics view columns    CreateListColumns(statistics, _("Statistic"), _("Value"));    pgSet *stats = GetSchema()->GetDatabase()->ExecuteSet(wxT(        "SELECT blks_read, blks_hit FROM pg_statio_all_sequences WHERE relid = ") + GetOidStr());    if (stats)    {        statistics->InsertItem(0, _("Blocks Read"), PGICON_STATISTICS);        statistics->SetItem(0l, 1, stats->GetVal(wxT("blks_read")));        statistics->InsertItem(1, _("Blocks Hit"), PGICON_STATISTICS);        statistics->SetItem(1, 1, stats->GetVal(wxT("blks_hit")));        delete stats;    }}
开发者ID:xiul,项目名称:Database-Designer-for-pgAdmin,代码行数:20,


示例26: wxT

pgObject *gpPartition::Refresh(ctlTree *browser, const wxTreeItemId item){	gpPartition *partition = 0;	pgCollection *coll = browser->GetParentCollection(item);	if (coll)		partition = (gpPartition *)partitionFactory.CreateObjects(coll, 0, wxT("/n   AND rel.oid=") + GetOidStr());	return partition;}
开发者ID:GHnubsST,项目名称:pgadmin3,代码行数:9,


示例27: wxT

void pgRole::ShowTreeDetail(ctlTree *browser, frmMain *form, ctlListView *properties, ctlSQLBox *sqlPane){    if (!expandedKids)    {        expandedKids=true;        wxString rolesquery;        if (GetConnection()->BackendMinimumVersion(8, 2))            rolesquery = wxT("SELECT rolname, admin_option,/n")                          wxT(" pg_catalog.shobj_description(r.oid, 'pg_authid') AS description/n");        else            rolesquery = wxT("SELECT rolname, admin_option/n");         rolesquery += wxT("  FROM pg_roles r/n")                       wxT("  JOIN pg_auth_members ON r.oid=roleid/n")                       wxT(" WHERE member=") + GetOidStr() + wxT("/n")                       wxT(" ORDER BY rolname");        pgSetIterator roles(GetConnection(), rolesquery);        while (roles.RowsLeft())        {            wxString role=roles.GetVal(wxT("rolname"));            if (roles.GetBool(wxT("admin_option")))                role += PGROLE_ADMINOPTION;            rolesIn.Add(role);        }    }    if (properties)    {        CreateListColumns(properties);        properties->AppendItem(_("Name"), GetName());        properties->AppendItem(_("OID"), GetOid());        properties->AppendItem(_("Account expires"), DateToAnsiStr(GetAccountExpires()));        properties->AppendItem(_("Can login?"), BoolToYesNo(GetCanLogin()));        properties->AppendItem(_("Superuser?"), BoolToYesNo(GetSuperuser()));        properties->AppendItem(_("Create databases?"), BoolToYesNo(GetCreateDatabase()));        properties->AppendItem(_("Create roles?"), BoolToYesNo(GetCreateRole()));        properties->AppendItem(_("Update catalogs?"), BoolToYesNo(GetUpdateCatalog()));        properties->AppendItem(_("Inherits?"), BoolToYesNo(GetInherits()));        if (server->GetConnection()->BackendMinimumVersion(9, 1))        {            properties->AppendItem(_("Replication?"), BoolToYesNo(GetReplication()));        }        wxString strConnLimit;        strConnLimit.Printf(wxT("%ld"), GetConnectionLimit());         properties->AppendItem(_("Connection Limit"), strConnLimit);        properties->AppendItem(_("Comment"), firstLineOnly(GetComment()));        wxString roleList;        size_t index;        for (index=0 ; index < rolesIn.GetCount() ; index++)        {            if (!roleList.IsEmpty())                roleList += wxT(", ");            roleList += rolesIn.Item(index);        }        properties->AppendItem(_("Member of"), roleList);        for (index=0; index < configList.GetCount() ; index++)        {            wxString item=configList.Item(index);            properties->AppendItem(item.BeforeFirst('='), item.AfterFirst('='));        }    }}
开发者ID:mhagander,项目名称:pgadmin3,代码行数:71,


示例28: NumToStr

void pgRole::ShowDependents(frmMain *form, ctlListView *referencedBy, const wxString &where){    form->StartMsg(_(" Retrieving Role owned objects"));    referencedBy->ClearAll();    referencedBy->AddColumn(_("Type"), 60);    referencedBy->AddColumn(_("Database"), 80);    referencedBy->AddColumn(_("Name"), 300);    wxString sysoid = NumToStr(GetConnection()->GetLastSystemOID());    wxArrayString dblist;    pgSet *set;    set=GetConnection()->ExecuteSet(    wxT("SELECT 'd' as type, datname, datallowconn, datdba/n")    wxT("  FROM pg_database db/n")    wxT("UNION/n")    wxT("SELECT 'M', spcname, null, null/n")    wxT("  FROM pg_tablespace where spcowner=") + GetOidStr() + wxT("/n")    wxT(" ORDER BY 1, 2"));    if (set)    {        while (!set->Eof())        {            wxString name=set->GetVal(wxT("datname"));            if (set->GetVal(wxT("type")) == wxT("d"))            {                if (set->GetBool(wxT("datallowconn")))                    dblist.Add(name);                if (GetOidStr() == set->GetLong(wxT("datdba")))                    referencedBy->AppendItem(databaseFactory.GetIconId(), _("Database"), name);            }            else                referencedBy->AppendItem(tablespaceFactory.GetIconId(), _("Tablespace"), wxEmptyString, name);            set->MoveNext();        }        delete set;    }    // We ignore classid and refclassid here because we hope that oids are unique    // across system tables.    // Strictly speaking, we'd need to join pg_shdepend to each subquery    wxString depOids=wxT("(SELECT objid FROM pg_shdepend WHERE refobjid=") + GetOidStr() + wxT(")");    FillOwned(form->GetBrowser(), referencedBy, dblist,         wxT("SELECT cl.relkind, COALESCE(cin.nspname, cln.nspname) as nspname, COALESCE(ci.relname, cl.relname) as relname, cl.relname as indname/n")        wxT("  FROM pg_class cl/n")        wxT("  JOIN pg_namespace cln ON cl.relnamespace=cln.oid/n")        wxT("  LEFT OUTER JOIN pg_index ind ON ind.indexrelid=cl.oid/n")        wxT("  LEFT OUTER JOIN pg_class ci ON ind.indrelid=ci.oid/n")        wxT("  LEFT OUTER JOIN pg_namespace cin ON ci.relnamespace=cin.oid/n")        wxT(" WHERE cl.oid IN ") + depOids + wxT(" AND cl.oid > ") + sysoid + wxT("/n")        wxT("UNION ALL/n")        wxT("SELECT 'n', null, nspname, null/n")        wxT("  FROM pg_namespace nsp WHERE nsp.oid IN ") + depOids + wxT(" AND nsp.oid > ") + sysoid + wxT("/n")        wxT("UNION ALL/n")        wxT("SELECT CASE WHEN typtype='d' THEN 'd' ELSE 'y' END, null, typname, null/n")        wxT("  FROM pg_type ty WHERE ty.oid IN ") + depOids + wxT(" AND ty.oid > ") + sysoid + wxT("/n")        wxT("UNION ALL/n")        wxT("SELECT 'C', null, conname, null/n")        wxT("  FROM pg_conversion co WHERE co.oid IN ") + depOids + wxT(" AND co.oid > ") + sysoid + wxT("/n")        wxT("UNION ALL/n")        wxT("SELECT CASE WHEN prorettype=") + NumToStr(PGOID_TYPE_TRIGGER) + wxT(" THEN 'T' ELSE 'p' END, null, proname, null/n")        wxT("  FROM pg_proc pr WHERE pr.oid IN ") + depOids + wxT(" AND pr.oid > ") + sysoid + wxT("/n")        wxT("UNION ALL/n")        wxT("SELECT 'o', null, oprname || '('::text || ")                    wxT("COALESCE(tl.typname, ''::text) || ")                    wxT("CASE WHEN tl.oid IS NOT NULL AND tr.oid IS NOT NULL THEN ','::text END || ")                    wxT("COALESCE(tr.typname, ''::text) || ')'::text, null/n")        wxT("  FROM pg_operator op/n")        wxT("  LEFT JOIN pg_type tl ON tl.oid=op.oprleft/n")        wxT("  LEFT JOIN pg_type tr ON tr.oid=op.oprright/n")        wxT(" WHERE op.oid IN ") + depOids + wxT(" AND op.oid > ") + sysoid + wxT("/n")        wxT(" ORDER BY 1,2,3"));                form->EndMsg(set != 0);}
开发者ID:mhagander,项目名称:pgadmin3,代码行数:81,



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


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