其实我也不知道这能不能算入门,只能说看了之后大体上能有一个概念。如果有同学大作业是拿着俄罗斯方块的单机来做双人对战,可以尝试用模板元做。
之前在知乎(逼乎)上看到关于程序员不为人知的禁术的话题,手滑点开看到一个c++模板元编程,说是C++的最高级禁术,也有人说它是黑魔法,但不管怎样,应该是黑科技的那一种,而黑科技都是很具有诱惑力的。
刚入门(入坑),了解肯定不详细,先把这阶段的学习记下来,以后再慢慢修正完善,有什么错误也请大家指正。
总的来说模板是用来进行代码复用的,代码复用当然是为了简化工作的啦!C++搞个类出来,很猛,但依旧没有展现出与结构体相比的编码速度方面的巨大优势(private类型什么的在此不作考虑),主要还是要复用,要让人写起来爽,最好不写,让代码自动生成代码(Haskell?),函数式越来越重要,这也是称它为禁术的原因吧,让机器去做简单的工作,写简单的代码,代替那些几个小时零基础速成的low程序员失业是理所当然的事,毕竟编程是很神圣的。
//贴个经典的利用模板元求阶乘的代码,体验一下模板元
template<int N>
class Factorial
{
public:
enum
{
_result = N
template<int N>
class Factorial
{
public:
enum
{
_result = N