Started to learn some C++ for competitive programming (already know some other languages) However got in a thinking for swap function of C++. Looked several resources including this one and this one also (Although the later one was a bit jargon for me(exhaling)). Most of them just tell what swap() do... ok, now I know what it do but I'm wondering How it's different form other common swap methods?
For example, If I have two numbers a and b than, a ^= b ^= a ^= b will also swap a and b
Infact, in general any object(same type as a and b) can be swapped with:
object temp = a;
a = b;
b = temp;
Obviously this will have overhead of creating extra object. But it's very simple to write... than why a specially dedicated inbuilt swap() is there? Does it have better performance and if so, how it's implemented without using third variable (thinking emoji) ? Or it's just for sake of completion?
Aucun commentaire:
Enregistrer un commentaire