Szablon funkcji o zmiennej liście parametrów - suma argumentów

0

Witam!
Otóż chciałem napisać szablon funkcji o zmiennej liście parametrów. Przyjmował on by liczby, a zwracałby wartość double z sumą podanych argumentów. No i tutaj pojawia się problem, bo nie wiem jak zsumować wszystkie argumenty. Coś tam kombinowałem, ale nic nie wychodziło:

long double sum_values() {}

template <class T>
long double sum_values(T wartosc)
{

}

template <class T, class... Argumenty>
long double sum_values(T wartosc, Argumenty... argumenty)
{
T x =0; // tutaj obliczanie sumy, ale nie wiem co z czym i do czego
sum_values(argumenty...);
}

Tyle wykombinowałem.

3
#include <iostream>
 
template <class T>
long double sum_values(T wartosc) {
	return wartosc;
}
 
template <class T, class... Argumenty>
long double sum_values(T wartosc, Argumenty... argumenty) {
	return wartosc + sum_values(argumenty...);
}
 
int main() {
	std::cout << sum_values(1, 2, 3, 4);
	return 0;
}

http://ideone.com/LJxg3C

0

Dziękuję :)
Nie pomyślałem o takim rozwiązaniu. No nic, pewnie gdybym dłużej kombinował, to bym coś wykombinował. A tutaj takie proste rozwiązanie

1 użytkowników online, w tym zalogowanych: 0, gości: 1