模板編程等等的關(guān)系是什么?
元編程:指的是一種通過(guò)操縱元數(shù)據(jù)(可以是自身或者其它程序),來(lái)做到運(yùn)行時(shí)完成部分本應(yīng)在編譯時(shí)完成的工作,從而達(dá)到更高的工作效率。簡(jiǎn)單說(shuō),就是“用程序編寫(xiě)程序”。
泛型編程:通過(guò)一種方式,來(lái)實(shí)現(xiàn)一個(gè)通用的標(biāo)準(zhǔn)容器庫(kù),從而做到這個(gè)標(biāo)準(zhǔn)容器庫(kù)可以重復(fù)的在各種類型上使用,與模板有些相似。
函數(shù)式編程:是一種將電腦運(yùn)算視為函數(shù)運(yùn)算編程方式,可以把函數(shù)作為輸入和輸出來(lái)控制程序的行為。λ演算(lambda calculus)為該語(yǔ)言最重要的基礎(chǔ)。
面向?qū)ο缶幊蹋阂环N以對(duì)象為中心的編程方式,把現(xiàn)實(shí)世界映射到計(jì)算機(jī)模型的一種編程方法。程序中是對(duì)對(duì)象的各種操作。
面向過(guò)程編程:一種以過(guò)程為中心的編程思想,是把程序分解成一步一步對(duì)數(shù)據(jù)進(jìn)行操作的過(guò)程。
模版編程:一種元編程技術(shù),編譯器使用模板產(chǎn)生暫時(shí)性的源碼,然后再和剩下的源碼混合并編譯。這些模板的輸出包括編譯時(shí)期常量、數(shù)據(jù)結(jié)構(gòu)以及完整的函數(shù)。