從本節(jié)開始我們將模板元編程當(dāng)做一門獨立的函數(shù)式語言來討論它的方方面面。
所謂元編程,就是指可以產(chǎn)生程序的程序。由于模板的計算發(fā)生在“運行時C++”的前面,它可以為“運行時C++”產(chǎn)生代碼,所以稱之為模板元編程。
模板元編程的計算范式本質(zhì)上是函數(shù)式范式。對于一個函數(shù)式編程語言,函數(shù)是它的第一等公民。所以對于模板元編程,我們首先需要定義出這門語言中的函數(shù)形態(tài),然后基于函數(shù)討論它的主要特征。