Код: Выделить всё
#include
auto f1(auto&& v) {
return v;
}
auto f2(auto&& v) {
return std::forward(v);
}
int main() {
return f1(std::string("hello")).size() + f2(std::string("hello")).size();
}
[*] Согласно рекомендациям C ++ Core, F2 рекомендуется;
Согласно P0527R1, F1 достаточно, так как C ++ 23. Мы все еще всегда std :: forward универсальный справочный аргумент? или основные рекомендации C ++ должны быть обновлены?
Подробнее здесь: https://stackoverflow.com/questions/796 ... n-if-unnec
Мобильная версия