And*_*w T 4 c++ templates
人们可以将问题分为两个:如何阅读和编写模板化代码.
很容易说,"你想要一组双打,写std::vector<double>",但它不会教他们模板是如何工作的.
std::vector<double>
Pau*_*her 8
我可能会通过展示不使用它们的烦恼来尝试展示模板的强大功能.
一个很好的演示是写一些简单的东西,比如一堆双打(手写,而不是STL),方法是push,pop和foldTopTwo,它们弹出并将堆栈中的前两个值加在一起,并推动新的值得重新开始.
然后告诉他们为int(或者其他什么,只是一些不同的数字类型)做同样的事情.
然后向他们展示如何通过将此堆栈作为模板编写,您可以显着减少代码行数,以及所有可怕的重复.
归档时间:
16 年,7 月 前
查看次数:
962 次
最近记录:
14 年,6 月 前