Все зависит от того, что именно f
возвращает. Вы не можете просто return {1, 2};
, поэтому он должен возвращать что-то еще. Разрушенный указатель на массив? std::vector
?
Если это указатель, получить возвращенный указатель и затем присвоить значения.
int* p = f(a, b);
s[0] = p[0];
s[1] = p[1];
Если s
больше двух элементов, то лучше использовать std::copy
из <algorithm>
:
int* p = f(a, b);
std::copy(p, p + 2, s); // where 2 is the size of the array.