블로그는 나의 힘!
[ Programing ]/C++2018. 4. 17. 13:28

template <typename... Args>
auto sum(Args&&... args) {
     return (args + ... + 0);
}

 

-> sum( 1,2,3,4,5,6 );

 

 

원래 구현 할려면 아규먼트를 일일이 다 설정해줘야 하는데
저렇게 만들면 몇개가 되든 덧셈 가능.

 

 

 

14버전도 있음.
auto sum() { return 0; }

template <typename T>
auto sum(T&& t) { return t; }

template <typename T, typename... Rest>
auto sum(T&& t, Rest&&... r) {
     return t + sum(std::forward<Rest>(r)...);
}

일종의 tuple 구현방식과 비슷하게 만듬.

 

'[ Programing ] > C++' 카테고리의 다른 글

C++ 현재 시간 구하기.  (0) 2019.12.04
random_shuffle 시드 사용.  (0) 2019.11.22
C++ 17 새로운 기능들  (0) 2018.04.17
C++ 컴파일 중 인자 미사용 경고 없애는 매크로  (0) 2018.04.17
디버깅 메모리 중단점.  (0) 2018.04.11
Posted by Mister_Q