Ի՞նչ է emplace-ը cpp-ում:

Բովանդակություն:

Ի՞նչ է emplace-ը cpp-ում:
Ի՞նչ է emplace-ը cpp-ում:

Video: Ի՞նչ է emplace-ը cpp-ում:

Video: Ի՞նչ է emplace-ը cpp-ում:
Video: Ի՞նչ է ծրագրավորումը | Ծրագրավորում | «Քան» ակադեմիա 2024, Նոյեմբեր
Anonim

Վեկտորը՝: Վերաբաշխումը տեղի է ունենում միայն այն դեպքում, եթե կա ավելի շատ տարածքի անհրաժեշտություն: Այստեղ տարայի չափը մեծանում է մեկով։

Ինչի՞ համար է օգտագործվում emplace ֆունկցիան:

C++ set emplace ֆունկցիան օգտագործվում է սահմանված կոնտեյները երկարացնելու համար՝ նոր տարրեր տեղադրելով կոնտեյների մեջ: Տարրերը կառուցվում են ուղղակիորեն (ոչ պատճենվում են, ոչ էլ տեղափոխվում): Տարրի կոնստրուկտորը կանչվում է՝ այս ֆունկցիային փոխանցված արգումենտներին տալով արգումենտներ։

Ի՞նչ է անում Vector emplace?

vector::emplace

Տեղադրում է նոր տարր կոնտեյների մեջ անմիջապես pos-ից առաջ: Տարրը կառուցված է std::allocator_traits::construct-ի միջոցով, որը սովորաբար օգտագործում է place-new տարրը տեղում կոնտեյների կողմից տրամադրված վայրում կառուցելու համար:

Ի՞նչ է emplace-ը հերթում:

հերթ::emplace-ը օգտագործվում է հերթի բեռնարկղում նոր տարր տեղադրելու կամ տեղադրելու համար Քանի որ հերթի կառուցվածքի գործառույթն այն է, որ տարրը տեղադրված է կառուցվածքի վերջում:, to emplace-ը կանչում է emplace_back տարրի հաջող տեղադրման համար հերթի կոնտեյների վերջում։

Ո՞րն է տարբերությունը emplace-ի և push-ի միջև:

Մինչ push ֆունկցիան տեղադրում է արժեքի կամ ֆունկցիային փոխանցված պարամետրի պատճենը վերևի կոնտեյների մեջ, emplace ֆունկցիան կառուցում է նոր տարր՝ որպես պարամետրի արժեք, այնուհետև այն ավելացնում է վերևում: կոնտեյներ.