Meta programming 学习〈一〉Meta programming 是一种新语言,一种新的编程方式

本文介绍了作者对C++元编程(Meta Programming)的初步探索,强调了template不仅仅是一种高级语法,而是一种能够生成和操纵程序的新编程方式。元编程分为编译时计算和程序代码作为数据进行编程,它提供了一种超越传统编程的视角,类似Java和C#的反射机制。通过学习《C++.Template.Metaprogramming》等资源,作者揭示了元编程如何使用模板创建元语言,从而以全新的编程思维进行开发。
摘要由CSDN通过智能技术生成

    搞了好几年的C++,自认为谈不上精通也算比较熟悉了吧,但对c++中的template却一直没有深入玩过,对template的印象也仅仅停留在类型参数化,还有模板特化这一点点认识。

  然看到STL,BOOST, GTEST库中错综复杂的template用法,一边叹为观止确又一边晦莫如深。而今终于鼓起勇气,准备闯一闯这遍桃花源。


  入门教材:

  《C++.Template.Metaprogramming》

  《Beyond+C.plus.plus.Standard.Library.An.Introduction.to.Boost.chm》


  如果只是单纯把template看到是C++提供的一个高级语法格式,那么你可能也会如我一般,刚开始就一头扎进boost源码,弄得一个头两个大。直到看了C++.Template.Metaprogramming, 才发现这里面大有学问。人家叫meta programming.

        Template 可以用来做meta programming. meta有元始,超越的的意思。什么是meta programming, 我感觉现在对它的认识还有些浅,先引用wikipedia的解释

  Metaprogramming is the writing of 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值