Modern-Cpp-templates-tutorial
Modern-Cpp-templates-tutorial copied to clipboard
关于模板展开的想法
第一章中的模板展开为什么不使用通俗易懂的方式让新晋模板选手可以更好的理解呢? 第一章内容如下:
template<typename...Args>
void print(const Args&...args){
int _[]{ 0, (std::cout << args << ' ' ,0)... };
}
更改通俗易懂的代码示例:
template<typename T>
void print(T& t){
cout<<t<<endl;
}
template<typename...Args>
void print(const Args&...args){
(cout<<...<<args);
}
这样的代码难道不比上面多声明一个数组的方式更好吗?
@Mq-b
你是不是对 “通俗易懂” 有什么误解?
仅需要先了解下,“副作用”和“逗号表达式”。同时我觉得二元折叠表达式在模板初学者看来并不比形参包展开更通俗易懂。当然什么更易懂本来就是个主观问题。