C++17 折叠表达式
一元折叠表达式 ( pack op ... ) : 一元右折叠 (E op ...) 展开后: (E1 op (... op (EN-1 op EN))) ( ... op pack ) :一元左折叠 (... op E) 展开后: (((E1 op E2) op ...) op EN) 二元折叠表达式 ( pack op ... op init ) :二元右折叠 (E op ... op I) 展开后: (E1 op (... op (EN−1 op (EN op I)))) ( init op ....