數(shù)據(jù)模型
在計(jì)算機(jī)科學(xué)領(lǐng)域俗或,數(shù)據(jù)模型通常指:
1:對象可以采用的值。例如糠排,很多數(shù)據(jù)模型包含具有整數(shù)值的對象。數(shù)據(jù)模型的這個(gè)方面是靜態(tài)的超升,他告訴我們對象能接受那些值入宦。編程語言數(shù)據(jù)模型這一靜態(tài)部分通常被稱為類型系統(tǒng)哺徊。
2:數(shù)據(jù)的運(yùn)算。例如乾闰,我們常常會對整數(shù)執(zhí)行加法這樣的運(yùn)算落追。模型的這一方面是動態(tài)的,它告訴我們改變值和創(chuàng)建新值的方式涯肩。
編程語言的數(shù)據(jù)模型
每種編程語言都有自己的數(shù)據(jù)模型轿钠,這些數(shù)據(jù)模型互不相同,而且通常有相當(dāng)?shù)牟町惒∶纭6鄶?shù)編程語言處理數(shù)據(jù)所遵循的基本原則是疗垛,每個(gè)程序都可以訪問我們用于表示存儲區(qū)域的 '框', 每個(gè)框都有一個(gè)數(shù)據(jù)類型硫朦,比如int
贷腕,char
∫д梗框中可以存儲類型對應(yīng)的值泽裳,通常將可以存儲的值稱為數(shù)據(jù)對象。
我們還要為這些框命名破婆。一般來說涮总,框的名稱可以是指任何指示該框的表述性詞語。我們通常會將框的名稱視作該程序的變量祷舀,不過情況并非完全如此妹卿。例如,如果x
是遞歸函數(shù)F
的局部變量蔑鹦,那么就可能會有很多名為x
的框,每個(gè)x
都與對F
的不同相關(guān)聯(lián)箕宙。這樣的話嚎朽,這種框的真實(shí)名稱就是x
與對F
的某次調(diào)用的組合。
C語言中的數(shù)據(jù)類型比如:整數(shù)柬帕,浮點(diǎn)數(shù)哟忍,字符,數(shù)組陷寝,結(jié)構(gòu)锅很,指針,這些都是靜態(tài)的概念凤跑。
可以對數(shù)據(jù)進(jìn)行的操作包括整數(shù)和浮點(diǎn)數(shù)的常規(guī)算數(shù)運(yùn)算爆安,數(shù)組和結(jié)構(gòu)的存取操作,以及指針的解引用仔引。這些運(yùn)算都是C語言數(shù)據(jù)模型的動態(tài)部分扔仓。
在程序設(shè)計(jì)課程中褐奥,我們會看到C語言中不包括的重要數(shù)據(jù)模型,比如表翘簇,樹撬码,圖。用數(shù)學(xué)語言來講版保,表是可以寫成(a1,a2,a3,a4,....)
這種形式的的序列呜笑,可以對表進(jìn)行增,刪,查悍引,改元素的操作丈咐。