Как в данном случае прям из функции присвоить значения переменным?
#include <iostream>
template<typename T>
T swap(T& a, T& b) {
T* t = new T;
*t = a;
a = b;
b = *t;
delete t;
return a, b;
}
int main() {
int q = 1;
int w = 3;
double e = 2.3;
double t = 4.3;
swap<int>(q, w);
swap<double>(e, t);
std::cout << q << " " << w << std::endl;
std::cout << e << " " << t << std::endl;
}
Источник: Stack Overflow на русском