亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? 教學--第二十三章 類(一)封裝.htm

?? C++的入門書籍。文字簡單有趣,通俗易懂。
?? HTM
?? 第 1 頁 / 共 2 頁
字號:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<!-- saved from url=(0045)http://d2school.com/bcyl/bhcpp/newls/ls23.htm -->
<HTML><HEAD><TITLE>教學--第二十三章 類(一)封裝</TITLE>
<META http-equiv=Content-Type content="text/html; charset=gb2312">
<STYLE type=text/css>P {
	MARGIN: 1px 2px; LINE-HEIGHT: 150%
}
.節標題 {
	FONT-WEIGHT: bold; FONT-SIZE: 12pt
}
TD {
	FONT-SIZE: 9pt
}
.tdtitle {
	FONT-SIZE: 20pt
}
.celltopline {
	BORDER-TOP: #000000 1px solid
}
.menucell {
	FONT-SIZE: 10pt
}
#glowtext {
	FONT-SIZE: 10pt; FILTER: glow(color=red,strength=1); WIDTH: 100%
}
A:link {
	FONT: 10pt 宋體; COLOR: blue; TEXT-DECORATION: none
}
A:visited {
	FONT: 10pt 宋體; COLOR: purple; TEXT-DECORATION: none
}
A:active {
	FONT: 10pt 宋體; COLOR: red; TEXT-DECORATION: underline
}
A:hover {
	COLOR: blue; TEXT-DECORATION: underline
}
</STYLE>

<META content="MSHTML 6.00.2900.2180" name=GENERATOR></HEAD>
<BODY leftMargin=0 topMargin=3>
<CENTER>
<TABLE height=105 cellSpacing=4 cellPadding=4 width=760 border=0>
  <TBODY>
  <TR>
    <TD 
    style="FONT-SIZE: 10pt; TEXT-INDENT: 20px; LINE-HEIGHT: 150%; FONT-FAMILY: &Euml;&Icirc;&Igrave;&aring;" 
    width="100%" height=210>
      <H2>第二十<SPAN lang=zh-cn>三</SPAN>章&nbsp; <SPAN lang=zh-cn>類/class (一) 
      封裝</SPAN></H2>
      <P> </P>
      <P><A href="http://d2school.com/bcyl/bhcpp/newls/ls23.htm#23.1">23.1 
      從“我吃飯”開始</A> </P>
      <P><A href="http://d2school.com/bcyl/bhcpp/newls/ls23.htm#23.2">23.2 
      從“結構”到“類”</A> </P>
      <P><A href="http://d2school.com/bcyl/bhcpp/newls/ls23.htm#23.3">23.3 
      類的成員數據與成員函數</A> </P>
      <P><SPAN lang=zh-cn>&nbsp; </SPAN><A 
      href="http://d2school.com/bcyl/bhcpp/newls/ls23.htm#23.3.1">23.3.1 
      成員數據初始化的疑問</A> </P>
      <P><SPAN lang=zh-cn>&nbsp; </SPAN><A 
      href="http://d2school.com/bcyl/bhcpp/newls/ls23.htm#23.3.2">23.3.2 
      成員函數的實現</A> </P>
      <P><A href="http://d2school.com/bcyl/bhcpp/newls/ls23.htm#23.4">23.4 封裝 
      </A></P>
      <P><SPAN lang=zh-cn>&nbsp; </SPAN><A 
      href="http://d2school.com/bcyl/bhcpp/newls/ls23.htm#23.4.1">23.4.1 
      私有成員/private member </A></P>
      <P><SPAN lang=zh-cn>&nbsp; </SPAN><A 
      href="http://d2school.com/bcyl/bhcpp/newls/ls23.htm#23.4.2">23.4.2 
      保護成員/protected member</A> </P>
      <P><SPAN lang=zh-cn>&nbsp; </SPAN><A 
      href="http://d2school.com/bcyl/bhcpp/newls/ls23.htm#23.4.3">23.4.3 
      公有成員/public member </A></P>
      <P><SPAN lang=zh-cn>&nbsp; </SPAN><A 
      href="http://d2school.com/bcyl/bhcpp/newls/ls23.htm#23.4.4">23.4.4 
      “封裝”的作用</A> </P>
      <P><A href="http://d2school.com/bcyl/bhcpp/newls/ls23.htm#23.5">23.5 
      作業</A></P>
      <P> </P>
      <H1><B><FONT size=4><A name=23.1>2<SPAN lang=zh-cn>3</SPAN>.1</A> <SPAN 
      lang=zh-cn>從“我吃飯”開始</SPAN></FONT></B></H1>
      <P> </P>
      <P><SPAN lang=zh-cn>我吃飯……</SPAN></P>
      <P><SPAN lang=zh-cn>其中,“我”是一個變量,“我”的類型是“人類”;</SPAN></P>
      <P><SPAN lang=zh-cn>“吃”是一個函數。</SPAN></P>
      <P><SPAN lang=zh-cn>“飯”也是一個變量,它的類型是“食物”。這里用于做函數“吃”的參數。</SPAN></P>
      <P> </P>
      <P><SPAN 
      lang=zh-cn>“我吃飯”!這是一種面向對象的思想的表達。其中的對象是“我”。以我為中心。我因為是人類,所以具備“吃”這種能力。如果說“桌子吃飯”,那么編譯器會報錯,因為桌子屬于家具類,而家具不提供“吃”的函數。</SPAN></P>
      <P><SPAN 
      lang=zh-cn>C++是一種具備面向對象能力的編程語言,所以,用C++來表達“我吃飯”這樣一件事時,它的代碼風格貼近這種人類的自然語言,即:我.吃(飯);“我”是一個對象,“吃”是“我”所屬對象(人類)的一個函數,而“飯”是函數參數。</SPAN></P>
      <P><SPAN 
      lang=zh-cn>換成C語言,因為它不具備面向對象的設計思想,所以,它只能說成:“吃(我,飯)”。“吃”是函數,“我”和“飯”是兩個參數。沒有人規則一定要把“我”作為第一個參數,你盡可寫成“吃(飯,我)”。二者比較,面向對象的最基本的好處或許您已經有所體會:自然,從而不容易出錯。</SPAN></P>
      <P> </P>
      <H1><B><FONT size=4><A name=23.2>23.2</A> 從“結構”到“類”</FONT></B></H1>
      <P> </P>
      <P><SPAN 
      lang=zh-cn>上一章我們學習了結構(struct)。(強烈建議你暫時放下新課程,重溫一下struct)。</SPAN></P>
      <P><SPAN lang=zh-cn>結構讓我們具備了把多種相同或不同的類型,組成一種新類型的能力。</SPAN></P>
      <P><SPAN lang=zh-cn>比如上一章講的“寶寶/BaoBao”這一結構,它的組合為:</SPAN></P>
      <P> </P>
      <P><B>struct</B> BaoBao</P>
      <P><B>{</B></P>
      <P>&nbsp;&nbsp;&nbsp; char xingMing[11];<SPAN lang=zh-cn> 
      //用字符數組,來存儲姓名</SPAN></P>
      <P>&nbsp;&nbsp;&nbsp; int shenGao;<SPAN lang=zh-cn> //身高,整型</SPAN></P>
      <P>&nbsp;&nbsp;&nbsp; float tiZhong;<SPAN lang=zh-cn> //體重,實型</SPAN></P>
      <P><B>};</B> </P>
      <P> </P>
      <P><SPAN 
      lang=zh-cn>通過struct,我們通過將簡單數據類型(int,float,bool……)或簡單數據類型的數組、指針,組合成一個新的<B>數據類型</B>。由此,我們在用程序表達復雜的現實世界時,更接近了一步。但是別忘了,我們說過世界是由“數據”和“動作”組成的。光能定義出各種數據類型,還只是編程世界的一半。你可能會說,我們有函數啊,函數不是可以表達“動作”?</SPAN></P>
      <P><SPAN 
      lang=zh-cn>沒錯,比如說,寶寶肯定有“吃”的動作,所以我來聲明一個“吃”的函數。為了直觀,我們的函數命名為“Chi”。并且我們假充有一種數據類型叫“飯”,同樣用拼音Fan表示,首字母大寫,而小寫的fan用來做形參。</SPAN></P>
      <P> </P>
      <P><SPAN lang=zh-cn>void Chi(Fan fan);</SPAN></P>
      <P> </P>
      <P><SPAN 
      lang=zh-cn>乍一看,感覺這個函數這樣聲明也就對了。“吃飯”函數嘛,有“吃”又有“飯”……可仔細一想,誰吃飯啊?這個光有吃的動作和吃的東西,和我們前面的“寶寶”數據類型有何關系?所以,顯然不夠,需要再加一個參數,用于傳一個“要吃飯”的寶寶進去。因此函數變成:</SPAN></P>
      <P> </P>
      <P><SPAN lang=zh-cn>void Chi(BaoBao bb, Fan fan);</SPAN></P>
      <P> </P>
      <P><SPAN 
      lang=zh-cn>得,“吃我飯”的表達出來了。過程化的編程,其設計重在關心“過程”,比如:“如何吃”,但這個世界要求我們完整地關心“誰?如何吃?吃什么?”。事實上,同一樣一個“吃”,寶寶吃的動作,和一個大男人吃的動作;或者,吃飯還是吃奶的動作?怕是完全不一樣。如果真寫,就不得不寫很多版本的“吃”這一函數:</SPAN></P>
      <P><SPAN lang=zh-cn>假設用DNR表大男人(暈,好像大女人也可以?):</SPAN></P>
      <P><SPAN lang=zh-cn>void DNRChi(DNR dnr, PingGuo pg); 
      //吃函數版本一:大男人吃蘋果</SPAN></P>
      <P><SPAN lang=zh-cn>void DNRChi(DNR dnr,Fan fan); 
//吃函數版本二:大男人吃飯</SPAN></P>
      <P><SPAN lang=zh-cn>void BaoBaoChi(BaoBao bb, Nai nai); 
      //吃函數版本三:寶寶吃奶</SPAN></P>
      <P><SPAN lang=zh-cn>void BaoBaoChi(BaoBao bb, Fan fan); 
      //吃函數版本四:寶寶吃飯</SPAN></P>
      <P><SPAN lang=zh-cn>......</SPAN></P>
      <P> </P>
      <P><SPAN 
      lang=zh-cn>這樣的函數還可以有很多。函數多或許并沒有錯,必竟所要表達事物本來就復雜。然而問題是我們如何去理解,區分,記憶這些函數呢?僅靠函數名和函數參數的不同嗎?在超市付款時,看過收款員拉開過放錢的小抽屜嗎?拉開一看,都是錢,但10元的5元,100元的及硬幣分門別類地放好……聰明的你一定會提出:如果能把函數也歸類就好了……這就有了“類”,英文稱為:class。</SPAN></P>
      <P> </P>
      <P><SPAN lang=zh-cn>請仔細看,下面示例的class定義里,加入了一個函數:</SPAN></P>
      <P> </P>
      <P><SPAN lang=zh-cn>class BaoBao</SPAN></P>
      <P><SPAN lang=zh-cn>{</SPAN></P>
      <P>&nbsp;&nbsp;&nbsp; char xingMing[11];<SPAN lang=zh-cn> 
      //用字符數組,來存儲姓名</SPAN></P>
      <P>&nbsp;&nbsp;&nbsp; int shenGao;<SPAN lang=zh-cn> //身高,整型</SPAN></P>
      <P>&nbsp;&nbsp;&nbsp; float tiZhong;<SPAN lang=zh-cn> //體重,實型</SPAN></P>
      <P> </P>
      <P><SPAN lang=zh-cn>&nbsp;&nbsp;&nbsp; void Chi(Fan fan); 
      //加入“吃”的函數。&nbsp;&nbsp; </SPAN></P>
      <P><SPAN lang=zh-cn>};</SPAN></P>
      <P> </P>
      <P><SPAN 
      lang=zh-cn>這算是一個“突變”——我們一直說著的“動作”與“數據”從這里開始合二為一,表面看來或許不過如此:無非是在類的定義里,同時可以包括數據及函數。然而卻由此開啟了“面向對象”世界之門。如果你喜歡武俠,那你可以把它看成一門語言打通了任督二脈……</SPAN></P>
      <P> </P>
      <P><SPAN lang=zh-cn>類的數據定義里,出現函數,那么,這個函數的<B>聲明</B>它占用類的大小嗎?</SPAN></P>
      <P> </P>
      <P><SPAN 
      lang=zh-cn>來看兩個數據定義,前者是struct,后者是class。前者沒有包括函數,后者包括一個函數。其余的數據定義完全一樣。</SPAN></P>
      <P> </P>
      <DIV align=center>
      <CENTER>
      <TABLE id=AutoNumber1 cellSpacing=0 cellPadding=0 width="72%" 
      bgColor=#008080 border=1>
        <TBODY>
        <TR>
          <TD width="47%"><FONT color=#ffffff><SPAN lang=zh-cn>struct 
            SBaoBao</SPAN></FONT>
            <P><FONT color=#ffffff><SPAN lang=zh-cn>{</SPAN></FONT></P>
            <P><FONT color=#ffffff><SPAN lang=zh-cn>&nbsp;&nbsp; char 
            xingMing[11];</SPAN></FONT></P>
            <P><FONT color=#ffffff><SPAN lang=zh-cn>&nbsp;&nbsp; int 
            shenGao;</SPAN></FONT></P>
            <P><FONT color=#ffffff><SPAN lang=zh-cn>&nbsp;&nbsp; float 
            tiZhou;</SPAN></FONT></P>
            <P><FONT color=#ffffff><SPAN lang=zh-cn>};</SPAN></FONT></P></TD>
          <TD width="53%"><FONT color=#ffffff><SPAN lang=zh-cn>class 
            CBaoBao</SPAN></FONT>
            <P><FONT color=#ffffff><SPAN lang=zh-cn>{</SPAN></FONT></P>
            <P><FONT color=#ffffff><SPAN lang=zh-cn>&nbsp;&nbsp; char 
            xingMing[11];</SPAN></FONT></P>
            <P><FONT color=#ffffff><SPAN lang=zh-cn>&nbsp;&nbsp; int 
            shenGao;</SPAN></FONT></P>
            <P><FONT color=#ffffff><SPAN lang=zh-cn>&nbsp;&nbsp; float 
            tiZhou;</SPAN></FONT></P>
            <P> </P>
            <P><FONT color=#ffffff><SPAN lang=zh-cn>&nbsp;&nbsp; void Chi(int 
            a); //參數可不能用Fan了</SPAN></FONT></P>

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
成人av影院在线| 久久久午夜精品理论片中文字幕| 欧美日韩在线直播| 精品成人a区在线观看| 一二三区精品福利视频| 国内精品写真在线观看| 欧美中文字幕一区| ●精品国产综合乱码久久久久| 麻豆精品久久精品色综合| 91麻豆国产福利在线观看| 久久久激情视频| 免费观看91视频大全| 欧美专区亚洲专区| 亚洲欧美乱综合| 成人免费视频国产在线观看| 欧美videofree性高清杂交| 亚洲成a人v欧美综合天堂 | 综合中文字幕亚洲| 极品少妇一区二区三区精品视频| 欧美日韩视频第一区| 亚洲精品网站在线观看| 成人免费视频播放| 亚洲国产精品成人久久综合一区| 国产伦理精品不卡| 久久午夜国产精品| 国产美女在线观看一区| 欧美精品一区二区三区很污很色的 | 全国精品久久少妇| 欧美另类高清zo欧美| 亚洲午夜av在线| 欧美三级日韩三级| 日韩制服丝袜av| 欧美一级午夜免费电影| 免费成人在线影院| 精品国产凹凸成av人网站| 久久电影网站中文字幕| 久久亚洲二区三区| 国产福利一区在线观看| 日本一区二区三区视频视频| 粉嫩av一区二区三区粉嫩| 国产香蕉久久精品综合网| 成人三级伦理片| 中文字幕在线观看一区二区| 色www精品视频在线观看| 亚洲曰韩产成在线| 欧美一区二区三区免费视频| 久久草av在线| 国产欧美一区二区三区鸳鸯浴 | 欧美精品aⅴ在线视频| 香蕉加勒比综合久久| 日韩午夜在线观看视频| 国产精品资源在线看| 中文字幕中文字幕在线一区| 91国产成人在线| 免费观看久久久4p| 欧美韩国一区二区| 欧美日韩中文另类| 精品在线观看视频| 中文字幕综合网| 日韩一区二区在线观看| 成人性色生活片| 亚洲成人一区在线| 久久久不卡网国产精品一区| 91色视频在线| 久久er精品视频| 亚洲欧美成人一区二区三区| 91麻豆精品91久久久久同性| 国产成人8x视频一区二区| 亚洲va欧美va国产va天堂影院| 精品久久久久久久久久久久久久久久久 | 欧美剧情电影在线观看完整版免费励志电影 | 欧美日韩国产综合久久| 狠狠网亚洲精品| 亚洲精品中文在线| 精品国产3级a| 欧美三级日韩三级| 国产高清无密码一区二区三区| 亚欧色一区w666天堂| 亚洲国产精品99久久久久久久久| 欧美日韩中文字幕一区二区| 国产精品综合一区二区| 亚洲成人av电影在线| 国产精品美女久久久久久| 日韩免费高清电影| 欧美日韩小视频| 久久美女艺术照精彩视频福利播放| 欧美在线一区二区| 成人激情免费视频| 国产主播一区二区| 另类小说综合欧美亚洲| 亚洲国产成人91porn| 中文字幕一区在线| 欧美激情一区二区三区不卡| 欧美大胆人体bbbb| 91精品国产综合久久久久久久| 91麻豆文化传媒在线观看| 国产mv日韩mv欧美| 国产一区二区主播在线| 麻豆精品视频在线观看免费| 午夜影院久久久| 亚洲黄色尤物视频| 亚洲欧美成人一区二区三区| 国产精品久久久久一区| 中文字幕免费不卡| 久久久精品国产99久久精品芒果 | 国产伦理精品不卡| 激情综合色综合久久| 美女视频黄a大片欧美| 婷婷亚洲久悠悠色悠在线播放 | 国产呦精品一区二区三区网站| 午夜精品福利一区二区三区av| 一区二区三区美女| 亚洲制服丝袜一区| 亚洲午夜激情网站| 亚洲成人免费在线观看| 午夜日韩在线电影| 亚洲chinese男男1069| 午夜精品国产更新| 日本不卡一二三| 蜜臀av性久久久久蜜臀aⅴ四虎| 日韩av在线发布| 六月婷婷色综合| 国产久卡久卡久卡久卡视频精品| 国产麻豆精品theporn| 国产精品一区专区| 白白色 亚洲乱淫| a在线播放不卡| 欧洲精品一区二区| 在线91免费看| 亚洲精品一区二区三区蜜桃下载 | 成人av影院在线| 成人精品免费网站| 色欧美片视频在线观看 | 亚洲福利视频三区| 麻豆精品久久精品色综合| 国产成人av在线影院| eeuss鲁一区二区三区| 欧美三级乱人伦电影| 日韩欧美国产系列| 中文字幕乱码亚洲精品一区| 一区二区三区欧美久久| 免费成人在线网站| 成人永久aaa| 欧美裸体bbwbbwbbw| 久久久久久麻豆| 亚洲一区二区在线视频| 紧缚捆绑精品一区二区| 91一区二区在线| 欧美不卡在线视频| 亚洲色图19p| 精品亚洲国内自在自线福利| 色婷婷亚洲综合| 久久九九久久九九| 亚洲五月六月丁香激情| 国产成人综合在线| 欧美久久久久久蜜桃| 欧美激情一区二区三区在线| 日韩电影免费在线观看网站| 成人精品小蝌蚪| 日韩美女视频在线| 一区二区三区四区不卡视频| 国内精品自线一区二区三区视频| 99在线热播精品免费| 久久一区二区三区国产精品| 亚洲成人手机在线| jlzzjlzz亚洲女人18| 日韩欧美高清dvd碟片| 亚洲一区二区av在线| 国产91精品一区二区麻豆亚洲| 91精品国产麻豆国产自产在线| 综合av第一页| 国产福利91精品一区| 欧美一区二区成人6969| 亚洲激情成人在线| 成人国产精品免费观看视频| 日韩欧美视频一区| 午夜不卡在线视频| 欧洲av一区二区嗯嗯嗯啊| 中文字幕精品在线不卡| 久久av老司机精品网站导航| 欧美高清激情brazzers| 亚洲免费观看高清| 成人黄色免费短视频| 久久九九影视网| 国产激情偷乱视频一区二区三区| 欧美xxxx老人做受| 日本不卡一区二区三区| 777xxx欧美| 天堂va蜜桃一区二区三区漫画版| 日本道在线观看一区二区| 1024成人网色www| 97精品久久久午夜一区二区三区 | 五月激情丁香一区二区三区| 欧美性xxxxxxxx| 亚洲一区在线电影| 欧美日韩综合一区| 亚洲一级二级三级在线免费观看| 在线中文字幕一区| 亚洲成人精品影院| 777奇米四色成人影色区|