tests for sum
This commit is contained in:
parent
294b61072e
commit
fbee14508d
2 changed files with 10 additions and 2 deletions
1
.gitignore
vendored
1
.gitignore
vendored
|
@ -1,4 +1,5 @@
|
|||
i
|
||||
s
|
||||
t
|
||||
a.out
|
||||
.clangd
|
||||
|
|
11
sum.cpp
11
sum.cpp
|
@ -1,7 +1,14 @@
|
|||
#include <iostream>
|
||||
#include <cassert>
|
||||
|
||||
template <typename T> auto sum(T final) { return final; }
|
||||
template <typename T, typename... Ts> auto sum(T first, Ts... rem) {
|
||||
return first + sum<Ts...>(rem...);
|
||||
}
|
||||
int main(void) { std::cout << sum<double, int, int, int>(1.5, 2, 3, 10); }
|
||||
int main(void) {
|
||||
bool dummy = sum<double, int, int, int>(1.5, 2, 3, 10) == 16.5;
|
||||
assert(dummy);
|
||||
dummy = sum<int, int, int, int, int, int, int>(1, 5, 7, 8, 2, 3, 4) == 30;
|
||||
assert(dummy);
|
||||
dummy = sum<double>(1.5, 1, 2, 3.5) == 8.0;
|
||||
assert(dummy);
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue