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

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

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

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

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

示例1: GetTemplate

bool Item::GemsFitSockets() const{    for (uint32 enchant_slot = SOCK_ENCHANTMENT_SLOT; enchant_slot < SOCK_ENCHANTMENT_SLOT+MAX_GEM_SOCKETS; ++enchant_slot)    {        uint8 SocketColor = GetTemplate()->Socket[enchant_slot-SOCK_ENCHANTMENT_SLOT].Color;        if (!SocketColor) // no socket slot            continue;        uint32 enchant_id = GetEnchantmentId(EnchantmentSlot(enchant_slot));        if (!enchant_id) // no gems on this socket            return false;        SpellItemEnchantmentEntry const* enchantEntry = sSpellItemEnchantmentStore.LookupEntry(enchant_id);        if (!enchantEntry) // invalid gem id on this socket            return false;        uint8 GemColor = 0;        uint32 gemid = enchantEntry->GemID;        if (gemid)        {            ItemTemplate const* gemProto = sObjectMgr->GetItemTemplate(gemid);            if (gemProto)            {                GemPropertiesEntry const* gemProperty = sGemPropertiesStore.LookupEntry(gemProto->GemProperties);                if (gemProperty)                    GemColor = gemProperty->color;            }        }        if (!(GemColor & SocketColor)) // bad gem color on this socket            return false;    }    return true;}
开发者ID:Kimbanjang,项目名称:Mong2Core,代码行数:36,


示例2: switch

void AreaTrigger::UpdateTargetList(){    std::list<Unit*> targetList;    switch (GetTemplate()->Type)    {        case AREATRIGGER_TYPE_SPHERE:            SearchUnitInSphere(targetList);            break;        case AREATRIGGER_TYPE_BOX:            SearchUnitInBox(targetList);            break;        case AREATRIGGER_TYPE_POLYGON:            SearchUnitInPolygon(targetList);            break;        case AREATRIGGER_TYPE_CYLINDER:            SearchUnitInCylinder(targetList);            break;        default:            break;    }    HandleUnitEnterExit(targetList);}
开发者ID:welder1976,项目名称:TrinityCore,代码行数:24,


示例3: int32

void AreaTrigger::UpdateSplinePosition(uint32 diff){    if (_reachedDestination)        return;    if (!HasSplines())        return;    _movementTime += diff;    if (_movementTime >= GetTimeToTarget())    {        _reachedDestination = true;        _lastSplineIndex = int32(_spline->last());        G3D::Vector3 lastSplinePosition = _spline->getPoint(_lastSplineIndex);        GetMap()->AreaTriggerRelocation(this, lastSplinePosition.x, lastSplinePosition.y, lastSplinePosition.z, GetOrientation());#ifdef TRINITY_DEBUG        DebugVisualizePosition();#endif        _ai->OnSplineIndexReached(_lastSplineIndex);        _ai->OnDestinationReached();        return;    }    float currentTimePercent = float(_movementTime) / float(GetTimeToTarget());    if (currentTimePercent <= 0.f)        return;    if (GetMiscTemplate()->MoveCurveId)    {        float progress = sDB2Manager.GetCurveValueAt(GetMiscTemplate()->MoveCurveId, currentTimePercent);        if (progress < 0.f || progress > 1.f)        {            TC_LOG_ERROR("entities.areatrigger", "AreaTrigger (Id: %u, SpellMiscId: %u) has wrong progress (%f) caused by curve calculation (MoveCurveId: %u)",                GetTemplate()->Id, GetMiscTemplate()->MiscId, progress, GetMiscTemplate()->MorphCurveId);        }        else            currentTimePercent = progress;    }    int lastPositionIndex = 0;    float percentFromLastPoint = 0;    _spline->computeIndex(currentTimePercent, lastPositionIndex, percentFromLastPoint);    G3D::Vector3 currentPosition;    _spline->evaluate_percent(lastPositionIndex, percentFromLastPoint, currentPosition);    float orientation = GetOrientation();    if (GetTemplate()->HasFlag(AREATRIGGER_FLAG_HAS_FACE_MOVEMENT_DIR))    {        G3D::Vector3 const& nextPoint = _spline->getPoint(lastPositionIndex + 1);        orientation = GetAngle(nextPoint.x, nextPoint.y);    }    GetMap()->AreaTriggerRelocation(this, currentPosition.x, currentPosition.y, currentPosition.z, orientation);#ifdef TRINITY_DEBUG    DebugVisualizePosition();#endif    if (_lastSplineIndex != lastPositionIndex)    {        _lastSplineIndex = lastPositionIndex;        _ai->OnSplineIndexReached(_lastSplineIndex);    }}
开发者ID:Rochet2,项目名称:TrinityCore,代码行数:68,


示例4: UndoActions

void AreaTrigger::UndoActions(Unit* unit){    for (AreaTriggerAction const& action : GetTemplate()->Actions)        if (action.ActionType == AREATRIGGER_ACTION_CAST || action.ActionType == AREATRIGGER_ACTION_ADDAURA)            unit->RemoveAurasDueToSpell(action.Param, GetCasterGuid());}
开发者ID:Rochet2,项目名称:TrinityCore,代码行数:6,


示例5: UpdateShape

void AreaTrigger::UpdateShape(){    if (GetTemplate()->IsPolygon())        UpdatePolygonOrientation();}
开发者ID:Rochet2,项目名称:TrinityCore,代码行数:5,


示例6: GetTemplate

uint32 AreaTrigger::GetScriptId() const{    return GetTemplate()->ScriptId;}
开发者ID:Rochet2,项目名称:TrinityCore,代码行数:4,


示例7: ChatHandler

void AreaTrigger::HandleUnitEnterExit(std::list<Unit*> const& newTargetList){    GuidUnorderedSet exitUnits = _insideUnits;    _insideUnits.clear();    std::vector<Unit*> enteringUnits;    for (Unit* unit : newTargetList)    {        if (exitUnits.erase(unit->GetGUID()) == 0) // erase(key_type) returns number of elements erased            enteringUnits.push_back(unit);        _insideUnits.insert(unit->GetGUID());    }    // Handle after _insideUnits have been reinserted so we can use GetInsideUnits() in hooks    for (Unit* unit : enteringUnits)    {        if (Player* player = unit->ToPlayer())            if (player->isDebugAreaTriggers)                ChatHandler(player->GetSession()).PSendSysMessage(LANG_DEBUG_AREATRIGGER_ENTERED, GetTemplate()->Id);        DoActions(unit);        _ai->OnUnitEnter(unit);    }    for (ObjectGuid const& exitUnitGuid : exitUnits)    {        if (Unit* leavingUnit = ObjectAccessor::GetUnit(*this, exitUnitGuid))        {            if (Player* player = leavingUnit->ToPlayer())                if (player->isDebugAreaTriggers)                    ChatHandler(player->GetSession()).PSendSysMessage(LANG_DEBUG_AREATRIGGER_LEFT, GetTemplate()->Id);            UndoActions(leavingUnit);            _ai->OnUnitExit(leavingUnit);        }    }}
开发者ID:Rochet2,项目名称:TrinityCore,代码行数:41,


示例8: GetTemplate

std::string BlackMarketEntry::BuildAuctionMailSubject(BMAHMailAuctionAnswers response) const{    std::ostringstream strm;    strm << GetTemplate()->Item.ItemID << ":0:" << response << ':' << GetMarketId() << ':' << GetTemplate()->Quantity;    return strm.str();}
开发者ID:Diyvol,项目名称:TrinityCore,代码行数:6,


示例9: SetEntry

bool Item::LoadFromDB(uint32 guid, uint64 owner_guid, Field* fields, uint32 entry){    //                                                    0                1      2         3        4      5             6                 7           8           9    10    //result = CharacterDatabase.PQuery("SELECT creatorGuid, giftCreatorGuid, count, duration, charges, flags, enchantments, randomPropertyId, durability, playedTime, text FROM item_instance WHERE guid = '%u'", guid);    // create item before any checks for store correct guid    // and allow use "FSetState(ITEM_REMOVED); SaveToDB();" for deleting item from DB    Object::_Create(guid, 0, HIGHGUID_ITEM);    // Set entry, MUST be before proto check    SetEntry(entry);    SetFloatValue(OBJECT_FIELD_SCALE_X, 1.0f);    ItemTemplate const* proto = GetTemplate();    if (!proto)        return false;    // set owner (not if item is only loaded for gbank/auction/mail    if (owner_guid != 0)        SetOwnerGUID(owner_guid);    bool need_save = false;                                 // need explicit save data at load fixes    SetUInt64Value(ITEM_FIELD_CREATOR, MAKE_NEW_GUID(fields[0].GetUInt32(), 0, HIGHGUID_PLAYER));    SetUInt64Value(ITEM_FIELD_GIFTCREATOR, MAKE_NEW_GUID(fields[1].GetUInt32(), 0, HIGHGUID_PLAYER));    SetCount(fields[2].GetUInt32());    uint32 duration = fields[3].GetUInt32();    SetUInt32Value(ITEM_FIELD_DURATION, duration);    // update duration if need, and remove if not need    if ((proto->Duration == 0) != (duration == 0))    {        SetUInt32Value(ITEM_FIELD_DURATION, abs(proto->Duration));        need_save = true;    }    Tokens tokens(fields[4].GetString(), ' ', MAX_ITEM_PROTO_SPELLS);    if (tokens.size() == MAX_ITEM_PROTO_SPELLS)        for (uint8 i = 0; i < MAX_ITEM_PROTO_SPELLS; ++i)            SetSpellCharges(i, atoi(tokens[i]));    SetUInt32Value(ITEM_FIELD_FLAGS, fields[5].GetUInt32());    // Remove bind flag for items vs NO_BIND set    if (IsSoulBound() && proto->Bonding == NO_BIND)    {        ApplyModFlag(ITEM_FIELD_FLAGS, ITEM_FLAG_SOULBOUND, false);        need_save = true;    }    std::string enchants = fields[6].GetString();    //_LoadIntoDataField(enchants.c_str(), ITEM_FIELD_ENCHANTMENT_1_1, MAX_ENCHANTMENT_SLOT * MAX_ENCHANTMENT_OFFSET);    {        // NOTE:        // in the recent update of reforge system, definition of EnchantmentSlot has been changed,        // and MAX_ENCHANTMENT_SLOT has been changed from 13 to 14,        // which makes enchantments column of item_instance table incompatible with previous version.        // in this case we will load only first 9 enchantment slots (0-8, for permanent, temporary, sockets, bonus, prismatic and reforge)        // and ignore the remaining ones (9-13, for random properties).        // which means item random properties will be lost after this update.        // after player logging in and saving the inventory, enchantments column will be properly updated.        uint32 count = MAX_ENCHANTMENT_SLOT * MAX_ENCHANTMENT_OFFSET;        Tokens tokens(enchants, ' ', count);        if (tokens.size() < MAX_ENCHANTMENT_SLOT * MAX_ENCHANTMENT_OFFSET)            count = REFORGE_ENCHANTMENT_SLOT * MAX_ENCHANTMENT_OFFSET;        for (uint32 index = 0; index < count; ++index)            m_uint32Values[ITEM_FIELD_ENCHANTMENT_1_1 + index] = index < tokens.size() ? atol(tokens[index]) : 0;    }    SetInt32Value(ITEM_FIELD_RANDOM_PROPERTIES_ID, fields[7].GetInt16());    // recalculate suffix factor    if (GetItemRandomPropertyId() < 0)        UpdateItemSuffixFactor();    uint32 durability = fields[8].GetUInt16();    SetUInt32Value(ITEM_FIELD_DURABILITY, durability);    // update max durability (and durability) if need    SetUInt32Value(ITEM_FIELD_MAXDURABILITY, proto->MaxDurability);    if (durability > proto->MaxDurability)    {        SetUInt32Value(ITEM_FIELD_DURABILITY, proto->MaxDurability);        need_save = true;    }    SetUInt32Value(ITEM_FIELD_CREATE_PLAYED_TIME, fields[9].GetUInt32());    SetText(fields[10].GetString());    if (need_save)                                           // normal item changed state set not work at loading    {        PreparedStatement* stmt = CharacterDatabase.GetPreparedStatement(CHAR_UPDATE_ITEM_INSTANCE_ON_LOAD);        stmt->setUInt32(0, GetUInt32Value(ITEM_FIELD_DURATION));        stmt->setUInt32(1, GetUInt32Value(ITEM_FIELD_FLAGS));        stmt->setUInt32(2, GetUInt32Value(ITEM_FIELD_DURABILITY));        stmt->setUInt32(3, guid);        CharacterDatabase.Execute(stmt);    }    return true;}
开发者ID:Devilcleave,项目名称:TrilliumEMU,代码行数:99,


示例10: while

void Adventure::MoveCorpsesToGraveyard(){	if(GetTemplate()->graveyard_zone_id == 0)	{		return;	}	list<uint32> dbid_list;	list<uint32> charid_list;	char errbuf[MYSQL_ERRMSG_SIZE];	char* query = 0;	MYSQL_RES *result;	MYSQL_ROW row;	if(database.RunQuery(query,MakeAnyLenString(&query,"SELECT id, charid FROM player_corpses WHERE instanceid=%d", GetInstanceID()), errbuf, &result)) 	{		while((row = mysql_fetch_row(result))) 		{			dbid_list.push_back(atoi(row[0]));			charid_list.push_back(atoi(row[1]));		}		mysql_free_result(result);		safe_delete_array(query);	}	else	{		LogFile->write(EQEMuLog::Error, "Error in AdventureManager:::MoveCorpsesToGraveyard: %s (%s)", query, errbuf);		safe_delete_array(query);	}	list<uint32>::iterator iter = dbid_list.begin();	while(iter != dbid_list.end())	{		float x = GetTemplate()->graveyard_x + MakeRandomFloat(-GetTemplate()->graveyard_radius, GetTemplate()->graveyard_radius);		float y = GetTemplate()->graveyard_y + MakeRandomFloat(-GetTemplate()->graveyard_radius, GetTemplate()->graveyard_radius);		float z = GetTemplate()->graveyard_z;		if(database.RunQuery(query,MakeAnyLenString(&query, "UPDATE player_corpses SET zoneid=%d, instanceid=0, x=%f, y=%f, z=%f WHERE instanceid=%d", 			GetTemplate()->graveyard_zone_id, x, y, z, GetInstanceID()), errbuf)) 		{			safe_delete_array(query);		}		else		{			LogFile->write(EQEMuLog::Error, "Error in AdventureManager:::MoveCorpsesToGraveyard: %s (%s)", query, errbuf);			safe_delete_array(query);		}		iter++;	}	iter = dbid_list.begin();	list<uint32>::iterator c_iter = charid_list.begin();	while(iter != dbid_list.end())	{		ServerPacket* pack = new ServerPacket(ServerOP_DepopAllPlayersCorpses, sizeof(ServerDepopAllPlayersCorpses_Struct));		ServerDepopAllPlayersCorpses_Struct *dpc = (ServerDepopAllPlayersCorpses_Struct*)pack->pBuffer;		dpc->CharacterID = (*c_iter);		dpc->InstanceID = 0;		dpc->ZoneID = GetTemplate()->graveyard_zone_id;		zoneserver_list.SendPacket(0, GetInstanceID(), pack);		delete pack;		pack = new ServerPacket(ServerOP_SpawnPlayerCorpse, sizeof(SpawnPlayerCorpse_Struct));		SpawnPlayerCorpse_Struct* spc = (SpawnPlayerCorpse_Struct*)pack->pBuffer;		spc->player_corpse_id = (*iter);		spc->zone_id = GetTemplate()->graveyard_zone_id;		zoneserver_list.SendPacket(spc->zone_id, 0, pack);		delete pack;		iter++;		c_iter++;	}}
开发者ID:Vaion,项目名称:Server,代码行数:72,


示例11: SetMap

bool AreaTrigger::Create(uint32 spellMiscId, Unit* caster, Unit* target, SpellInfo const* spell, Position const& pos, int32 duration, uint32 spellXSpellVisualId, ObjectGuid const& castId, AuraEffect const* aurEff){    _targetGuid = target ? target->GetGUID() : ObjectGuid::Empty;    _aurEff = aurEff;    SetMap(caster->GetMap());    Relocate(pos);    if (!IsPositionValid())    {        TC_LOG_ERROR("entities.areatrigger", "AreaTrigger (spellMiscId %u) not created. Invalid coordinates (X: %f Y: %f)", spellMiscId, GetPositionX(), GetPositionY());        return false;    }    _areaTriggerMiscTemplate = sAreaTriggerDataStore->GetAreaTriggerMiscTemplate(spellMiscId);    if (!_areaTriggerMiscTemplate)    {        TC_LOG_ERROR("entities.areatrigger", "AreaTrigger (spellMiscId %u) not created. Invalid areatrigger miscid (%u)", spellMiscId, spellMiscId);        return false;    }    Object::_Create(ObjectGuid::Create<HighGuid::AreaTrigger>(GetMapId(), GetTemplate()->Id, caster->GetMap()->GenerateLowGuid<HighGuid::AreaTrigger>()));    SetEntry(GetTemplate()->Id);    SetDuration(duration);    SetObjectScale(1.0f);    SetGuidValue(AREATRIGGER_CASTER, caster->GetGUID());    SetGuidValue(AREATRIGGER_CREATING_EFFECT_GUID, castId);    SetUInt32Value(AREATRIGGER_SPELLID, spell->Id);    SetUInt32Value(AREATRIGGER_SPELL_FOR_VISUALS, spell->Id);    SetUInt32Value(AREATRIGGER_SPELL_X_SPELL_VISUAL_ID, spellXSpellVisualId);    SetUInt32Value(AREATRIGGER_TIME_TO_TARGET_SCALE, GetMiscTemplate()->TimeToTargetScale != 0 ? GetMiscTemplate()->TimeToTargetScale : GetUInt32Value(AREATRIGGER_DURATION));    SetFloatValue(AREATRIGGER_BOUNDS_RADIUS_2D, GetTemplate()->MaxSearchRadius);    SetUInt32Value(AREATRIGGER_DECAL_PROPERTIES_ID, GetMiscTemplate()->DecalPropertiesId);    for (uint8 scaleCurveIndex = 0; scaleCurveIndex < MAX_AREATRIGGER_SCALE; ++scaleCurveIndex)        if (GetMiscTemplate()->ExtraScale.Data.Raw[scaleCurveIndex])            SetUInt32Value(AREATRIGGER_EXTRA_SCALE_CURVE + scaleCurveIndex, GetMiscTemplate()->ExtraScale.Data.Raw[scaleCurveIndex]);    PhasingHandler::InheritPhaseShift(this, caster);    if (target && GetTemplate()->HasFlag(AREATRIGGER_FLAG_HAS_ATTACHED))    {        m_movementInfo.transport.guid = target->GetGUID();    }    UpdateShape();    uint32 timeToTarget = GetMiscTemplate()->TimeToTarget != 0 ? GetMiscTemplate()->TimeToTarget : GetUInt32Value(AREATRIGGER_DURATION);    if (GetTemplate()->HasFlag(AREATRIGGER_FLAG_HAS_CIRCULAR_MOVEMENT))    {        AreaTriggerCircularMovementInfo cmi = GetMiscTemplate()->CircularMovementInfo;        if (target && GetTemplate()->HasFlag(AREATRIGGER_FLAG_HAS_ATTACHED))            cmi.PathTarget = target->GetGUID();        else            cmi.Center = pos;        InitCircularMovement(cmi, timeToTarget);    }    else if (GetMiscTemplate()->HasSplines())    {        InitSplineOffsets(GetMiscTemplate()->SplinePoints, timeToTarget);    }    // movement on transport of areatriggers on unit is handled by themself    Transport* transport = m_movementInfo.transport.guid.IsEmpty() ? caster->GetTransport() : nullptr;    if (transport)    {        float x, y, z, o;        pos.GetPosition(x, y, z, o);        transport->CalculatePassengerOffset(x, y, z, &o);        m_movementInfo.transport.pos.Relocate(x, y, z, o);        // This object must be added to transport before adding to map for the client to properly display it        transport->AddPassenger(this);    }    AI_Initialize();    // Relocate areatriggers with circular movement again    if (HasCircularMovement())        Relocate(CalculateCircularMovementPosition());    if (!GetMap()->AddToMap(this))    {        // Returning false will cause the object to be deleted - remove from transport        if (transport)            transport->RemovePassenger(this);        return false;    }    caster->_RegisterAreaTrigger(this);    _ai->OnCreate();    return true;}
开发者ID:Rochet2,项目名称:TrinityCore,代码行数:100,


示例12: GetTemplate

bool Item::IsTargetValidForItemUse(Unit* pUnitTarget){    ConditionList conditions = sConditionMgr->GetConditionsForNotGroupedEntry(CONDITION_SOURCE_TYPE_ITEM_REQUIRED_TARGET, GetTemplate()->ItemId);    if (conditions.empty())        return true;    if (!pUnitTarget)        return false;    for (ConditionList::const_iterator itr = conditions.begin(); itr != conditions.end(); ++itr)    {        ItemRequiredTarget irt(ItemRequiredTargetType((*itr)->mConditionValue1), (*itr)->mConditionValue2);        if (irt.IsFitToRequirements(pUnitTarget))            return true;    }    return false;}
开发者ID:AwkwardDev,项目名称:TrinityCore,代码行数:17,


示例13: GetTemplate

// Just a "legacy shortcut" for proto->GetSkill()uint32 Item::GetSkill(){    ItemTemplate const* proto = GetTemplate();    return proto->GetSkill();}
开发者ID:ElunaLuaEngine,项目名称:ElunaTrinityWotlk,代码行数:6,


示例14: GetTemplate

uint32 Item::GetSpell(){    ItemTemplate const* proto = GetTemplate();    switch (proto->Class)    {    case ITEM_CLASS_WEAPON:        switch (proto->SubClass)        {        case ITEM_SUBCLASS_WEAPON_AXE:            return  196;        case ITEM_SUBCLASS_WEAPON_AXE2:            return  197;        case ITEM_SUBCLASS_WEAPON_BOW:            return  264;        case ITEM_SUBCLASS_WEAPON_GUN:            return  266;        case ITEM_SUBCLASS_WEAPON_MACE:            return  198;        case ITEM_SUBCLASS_WEAPON_MACE2:            return  199;        case ITEM_SUBCLASS_WEAPON_POLEARM:            return  200;        case ITEM_SUBCLASS_WEAPON_SWORD:            return  201;        case ITEM_SUBCLASS_WEAPON_SWORD2:            return  202;        case ITEM_SUBCLASS_WEAPON_STAFF:            return  227;        case ITEM_SUBCLASS_WEAPON_DAGGER:            return 1180;        case ITEM_SUBCLASS_WEAPON_THROWN:            return 2567;        case ITEM_SUBCLASS_WEAPON_SPEAR:            return 3386;        case ITEM_SUBCLASS_WEAPON_CROSSBOW:            return 5011;        case ITEM_SUBCLASS_WEAPON_WAND:            return 5009;        default:            return 0;        }    case ITEM_CLASS_ARMOR:        switch (proto->SubClass)        {        case ITEM_SUBCLASS_ARMOR_CLOTH:            return 9078;        case ITEM_SUBCLASS_ARMOR_LEATHER:            return 9077;        case ITEM_SUBCLASS_ARMOR_MAIL:            return 8737;        case ITEM_SUBCLASS_ARMOR_PLATE:            return  750;        case ITEM_SUBCLASS_ARMOR_SHIELD:            return 9116;        default:            return 0;        }    }    return 0;}
开发者ID:winetaster,项目名称:InfinityCore,代码行数:61,


示例15: GetTemplate

// Legacy / Shortcutuint32 Item::GetSkill(){    return GetTemplate()->GetSkill();}
开发者ID:Matt-One,项目名称:azerothcore-wotlk,代码行数:5,



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


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