Size: a a a

IT KPI C/C++ ХВ (не UB)

2020 September 17

KS

Kyryl Sydorov in IT KPI C/C++ ХВ (не UB)
чи там взагалі без мува?
источник

A

András in IT KPI C/C++ ХВ (не UB)
Не знаю стосовно мува, але він, по суті, реалокує масив повністю, тому складність цієї операції завжди рівна сумі довжин доданків
источник

KS

Kyryl Sydorov in IT KPI C/C++ ХВ (не UB)
ага, я зрозумів. Дякую
источник

JC

Julian =) Coffee in IT KPI C/C++ ХВ (не UB)
Kyryl Sydorov
+= на внутрішньому рівні працює як

ans = std::move(ans + ' ')?
ну он либо копирует в конец, если там хватает капесити, либо реалоцирует и копирует в конец)
источник

KS

Kyryl Sydorov in IT KPI C/C++ ХВ (не UB)
Julian =) Coffee
ну он либо копирует в конец, если там хватает капесити, либо реалоцирует и копирует в конец)
нє-нє, так робить пушбек
источник

KS

Kyryl Sydorov in IT KPI C/C++ ХВ (не UB)
а += наче завжди реалокує
источник

A

András in IT KPI C/C++ ХВ (не UB)
источник

JC

Julian =) Coffee in IT KPI C/C++ ХВ (не UB)
в gcc не всегда
источник

KS

Kyryl Sydorov in IT KPI C/C++ ХВ (не UB)
ну це логічно
источник

KS

Kyryl Sydorov in IT KPI C/C++ ХВ (не UB)
воно створює rvalue-only об'єкт за O(n)
источник

JC

Julian =) Coffee in IT KPI C/C++ ХВ (не UB)
источник

KS

Kyryl Sydorov in IT KPI C/C++ ХВ (не UB)
а потім його переміщує (мабуть)
источник

JC

Julian =) Coffee in IT KPI C/C++ ХВ (не UB)
если капесити позволяет, то зачем его переалоцировать
источник

KS

Kyryl Sydorov in IT KPI C/C++ ХВ (не UB)
Julian =) Coffee
если капесити позволяет, то зачем его переалоцировать
ну += не переназначено на .push_back
источник

KS

Kyryl Sydorov in IT KPI C/C++ ХВ (не UB)
а працює через створення нового об'єкта
источник

JC

Julian =) Coffee in IT KPI C/C++ ХВ (не UB)
Kyryl Sydorov
ну += не переназначено на .push_back
там .append
источник

A

András in IT KPI C/C++ ХВ (не UB)
Julian =) Coffee
если капесити позволяет, то зачем его переалоцировать
хз як там під капотом, але тести показали, що пуш_бек швидше
источник

KS

Kyryl Sydorov in IT KPI C/C++ ХВ (не UB)
Julian =) Coffee
там .append
а, ну тоді ок
источник

JC

Julian =) Coffee in IT KPI C/C++ ХВ (не UB)
или пушбек, если там просто один символ
источник

JC

Julian =) Coffee in IT KPI C/C++ ХВ (не UB)
András
хз як там під капотом, але тести показали, що пуш_бек швидше
вот получите ваши зирокост абстракции))))
источник