One of the severe problems with C++ (>C++98) is that it teaches horrible behaviors like the use of "auto"... which really translates to:"I have no idea what this is!".
@Firaas I take it your prefer
typename std::iterator_traits<typename std::remove_referece<It>::type>::value_type
No STL, and no nonsense containers...
http://harmful.cat-v.org/software/c++/
For a breath of fresh air, try C (C99) instead 😉
@Firaas so you were just pretending to know c++ and what auto's for?
sure, fresh air, as in the crippling smell of rancid bloat.
https://qoto.org/web/statuses/104722541090746606
Listen here, kiddo: you know nothing about me
like you think you are making a backup or something? who would do that? cmon...
in general would you make a copy and hold on to it unless you want to modify it? why?