Item 1: 理解模版类型推导
如果你正在使用一套复杂的系统,在没有明白其原理的情况下也能够正常使用,你可以认为这套系统设计的非常不错。按照这个思路,C++的模版类型推导绝对是巨大的成功。虽然这些使用模版的大部分程序员都很难描述出这些类型是怎么推导的,但是仍有数百万的程序员已经在使用模版来给函数传递参数并且得到正确的结果。
如果你也是其中之一,我将给你带来一个好消息和坏消息。好消息是C++的模版编程是现代C++编程中最酷炫的一个特性的基础:auto 关键字。如果你很喜欢C++98中模版类型推导,那么你也将同样喜欢 C++ 11 中 auto 的推导。而坏消息就是,auto 的推导规则看上去不如模版来的直观。因此,深刻理解 auto 所建立的模版类型推导十分的重要,它涵盖了你需要了解的知识点。
阅读更多 »Item 1: 理解模版类型推导