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

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

?? 教學--第十四章 程序的文件結構.htm

?? 《白話c++網頁版》是一本用淺顯易懂的并具有點幽默的語調來講述c++的高深的內容
?? HTM
?? 第 1 頁 / 共 4 頁
字號:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<!-- saved from url=(0045)http://d2school.com/bcyl/bhcpp/newls/ls14.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=154 cellSpacing=4 cellPadding=4 width=760 border=0>
  <TBODY>
  <TR>
    <TD 
    style="FONT-SIZE: 10pt; TEXT-INDENT: 20px; LINE-HEIGHT: 150%; FONT-FAMILY: 宋體" 
    width="100%" height=148>
      <H2>第十四章 程序的文件結構</H2>
      <P><A href="http://d2school.com/bcyl/bhcpp/newls/ls14.htm#14.1">14.1 
      源文件和頭文件</A></P>
      <P><A href="http://d2school.com/bcyl/bhcpp/newls/ls14.htm#14.2">14.2 
      如何創建多個單元文件</A></P>
      <P><A href="http://d2school.com/bcyl/bhcpp/newls/ls14.htm#14.3">14.3 
      如何寫頭文件</A></P>
      <P>&nbsp;&nbsp; <A 
      href="http://d2school.com/bcyl/bhcpp/newls/ls14.htm#14.3.1">14.3.1 
      在頭文件內加入函數聲明</A></P>
      <P>&nbsp;&nbsp; <A 
      href="http://d2school.com/bcyl/bhcpp/newls/ls14.htm#14.3.2">14.3.2 
      最常見的預編譯語句</A></P>
      <P><A href="http://d2school.com/bcyl/bhcpp/newls/ls14.htm#14.4">14.4 
      如何使用頭文件</A></P>
      <P><A href="http://d2school.com/bcyl/bhcpp/newls/ls14.htm#14.5">14.5 
      變量在多個源文件之間的使用</A></P>
      <P>&nbsp;&nbsp; <A 
      href="http://d2school.com/bcyl/bhcpp/newls/ls14.htm#14.5.1">14.5.1 
      變量聲明</A></P>
      <P>&nbsp;&nbsp; <A 
      href="http://d2school.com/bcyl/bhcpp/newls/ls14.htm#14.5.2">14.5.2 
      多個文件中共享變量的實例</A></P>
      <P><A href="http://d2school.com/bcyl/bhcpp/newls/ls14.htm#14.6">14.6 
      附:如何單獨生成一個頭文件</A></P>
      <P> </P>
      <P>程序是由什么組成的? 學習到今天,我們至少有兩個答案:
      <P>第1,程序由代碼語句組成。正是一行行的代碼,組成了一個完整的程序。
      <P>第2,程序由函數組成。一個個函數之間的互相調用,最終構建出一個完整的程序。</P>
      <P>今天我們又有一個新的回答:“程序由文件組成”。</P>
      <P>程序為什么需要使用多個文件?</P>
      <P>一個小的程序,可以只寫一個源文件,但程序稍微一大,就需要將其中不同的邏輯實現放到不同的源文件.對于需要多人一起開發的軟件,自然更需要多個源文件。</P>
      <P> </P>
      <H3><A name=14.1>14.1</A> 源文件和頭文件</H3>
      <P> </P>
      <P>和別的一些語言不同,C,C++的代碼文件有“頭文件”和“代碼文件”之分。二者合起來我們稱為單元<SPAN 
      lang=en-us>(Unit)</SPAN>文件。</P>
      <P> </P>
      <P>擴展名為 .c 或 .cpp 的文件,主要用以實現程序的各種功能,我們稱為代碼文件。</P>
      <P>擴展名為 .h 
      的文件,稱為頭文件。在頭文件里主要寫一些函數、數據(包括數據類型的定義)、等的聲明,這樣可以在多個.c或.cpp文件內<B>共享</B>這些函數、數據。第12章我們提過到頭文件的功能。說它可以起到函數“名片夾”的作用。</P>
      <P> </P>
      <P>大都數時候,源文件和頭文件是對應出現的,比如有一個<SPAN lang=en-us> A.cpp </SPAN>的源文件,就會有一個<SPAN 
      lang=en-us> A.h </SPAN>的頭文件。這種情況在我們寫應用程序時,更是常見。所以C++ 
      Builder對此進行了強化。比如,它支持在同名源文件和頭文件之間通過熱鍵來回切換。在CB6.0里,編輯器打開對應的源文件和頭文件時,將顯示為同一頁下的兩個子頁。</P>
      <P> </P>
      <P>我們來實際動手看看源文件與頭文件在CB里的對應關系。</P>
      <P> </P>
      <P>運行 C++ Builder 6或5。</P>
      <P>這一次我們需要一個空白的<SPAN 
      lang=en-us>Windows</SPAN>工程。很有可能,在你打開CB時,它就自動為你打開了一個工程。為了不出錯,我們還是親自建一個。CB6請使用主菜單:<SPAN 
      lang=en-us>File | New | Application</SPAN>;而CB5則使用:<SPAN lang=en-us>File | 
      New Application</SPAN> <B>新建一個<SPAN lang=en-us>Windows 
      </SPAN>空白工程</B>。<SPAN lang=en-us> </SPAN>如果在這過程中CB出現是否存盤的詢問,請回答不存盤。</P>
      <P> </P>
      <P>找到“代碼窗口”。如果你看到的是一個叫<SPAN lang=en-us>"Form1"</SPAN>的表單,請按<SPAN 
      lang=en-us>F12,</SPAN>“代碼窗口”將跑到前面。它的標題應該是默認的<SPAN 
      lang=en-us>"Unit1.cpp"</SPAN>。正是當前代碼文件的文件名。如下圖:</P>
      <P> </P>
      <P><IMG src="教學--第十四章 程序的文件結構.files/ls14.h1.gif" border=0></P>
      <P> </P>
      <P>對于CB6,還可以看到在該窗口的底部有這樣一個分頁:</P>
      <P> </P>
      <P><IMG src="教學--第十四章 程序的文件結構.files/ls14.h2.gif" border=0></P>
      <P> </P>
      <P>源文件:<SPAN lang=en-us>Unit1.cpp </SPAN>和頭文件:<SPAN lang=en-us>Unit1.h 
      </SPAN>并列著,我們可以方便地選擇。至于<SPAN lang=en-us> 
      "Diagram"</SPAN>,稱為“圖解”。這是一個給這個源文件加配套注解,及表單上各控件的依賴關系的地方。如果是一個開發小組在進行共同開發,嚴格地要求每個成員為每個單元文件寫上“<SPAN 
      lang=en-us>Diagram</SPAN>”,可以更好地實現程序員之間的溝通。</P>
      <P><SPAN lang=en-us>CB5</SPAN>沒有這些,不過下面的熱鍵操作兩個版本均一樣的,要求大家記住。</P>
      <P>按<SPAN lang=en-us> Ctrl + F6 
      </SPAN>可以在源文件和頭文件之間來回切換。請大家試試。這個簡單的操作將在我們今后的編程過程中高頻率地使用。</P>
      <P> </P>
      <H3><A name=14.2>14.2</A> 如何創建多個單元文件</H3>
      <P> </P>
      <P>前面我們在“<SPAN 
      lang=en-us>Windows</SPAN>應用程序工程”中看到了頭文件與源文件的匹配關系,在“控制臺”的工程中,也同樣存在。不過由于控制臺經常只用來寫一些小小的程序,所以往往只需一個源文件即可。由于只有一個源文件,所以也就不存在函數、數據在多個文件之間“共享”的需要,因此邊頭文件也就可以不提供。</P>
      <P> </P>
      <P>那么,是不是只有在程序很大,或者只有在有很多人同時開發一個軟件時,才需要多個源文件呢?</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>根據我們現在所學的情況,我把這個工程中的代碼分為三個源代碼:</SPAN></P>
      <P><SPAN lang=zh-cn>其一:主程序。就是</SPAN>main()<SPAN 
      lang=zh-cn>函數所在的代碼。這個源文件實現總的流程。我將該文件取為</SPAN> main.cpp<SPAN 
      lang=zh-cn>。</SPAN></P>
      <P><SPAN 
      lang=zh-cn>其二:計算總和及計算平均值的代碼。這個源文件負責用戶計算過程,也包括每個過程所需輸入輸出。該文件將被存盤為</SPAN>mainfunc.cpp<SPAN 
      lang=zh-cn>。</SPAN> <SPAN lang=zh-cn>意為主要功能。</SPAN></P>
      <P><SPAN lang=zh-cn>其三:</SPAN> assifunc.cpp<SPAN 
      lang=zh-cn>。表示輔助功能函數所在代碼。它只提供一個函數:將用戶輸入的大寫或小寫的字母</SPAN>'Y'<SPAN 
      lang=zh-cn>或</SPAN>'N' <SPAN lang=zh-cn>確保轉換為大寫。這個函數將</SPAN>main()<SPAN 
      lang=zh-cn>主函數內</SPAN>,<SPAN lang=zh-cn>判斷用戶是否繼續時用到。</SPAN></P>
      <P> </P>
      <P><SPAN lang=zh-cn>新CB新建一個控制臺程序(如果你還開著上個程序,先選</SPAN>File | Close All<SPAN 
      lang=zh-cn>關閉它)。CB會自動生成第一個文件,不過現在的名字為“</SPAN>Unit1.cpp"<SPAN 
      lang=zh-cn>。</SPAN></P>
      <P><SPAN lang=zh-cn>接下來是一項新工作,我們來添加兩人新的單元文件,即上面說的“其二”和“其三”。</SPAN></P>
      <P><SPAN lang=zh-cn>CB6 :</SPAN>File | New | Unit<SPAN 
      lang=zh-cn>;CB5:</SPAN>File | New Unit<SPAN lang=zh-cn>。</SPAN></P>
      <P><SPAN lang=zh-cn>請進行兩次以上操作,CB將為我們生成新的兩個單元文件:</SPAN>Unit2.cpp<SPAN 
      lang=zh-cn>和</SPAN>Unit3.cpp<SPAN lang=zh-cn>。大家可以再試試</SPAN> Ctrl + 
      F6<SPAN lang=zh-cn>。</SPAN>(<SPAN 
      lang=zh-cn>注意,第一個單元文件:</SPAN>Unit1.cpp<SPAN lang=zh-cn> 
      沒有配套的</SPAN>.h<SPAN lang=zh-cn>文件,所以不要在該文件里嘗試</SPAN>Ctrl + F6)<SPAN 
      lang=zh-cn>。</SPAN></P>
      <P><SPAN lang=zh-cn>然后選擇</SPAN>File | Save All<SPAN 
      lang=zh-cn>。全部存盤,最好不要存在</SPAN>CB<SPAN 
      lang=zh-cn>默認的目錄下。記得按以下關系重命名:</SPAN></P>
      <P>Unit1.cpp <SPAN lang=zh-cn>存盤為</SPAN> main.cpp<SPAN 
      lang=zh-cn>;</SPAN></P>
      <P>Unit2.cpp <SPAN lang=zh-cn>存盤為 </SPAN>mainfunc.cpp<SPAN 
      lang=zh-cn>;</SPAN></P>
      <P>Unit3.cpp <SPAN lang=zh-cn>存盤為 </SPAN>assifunc.cpp<SPAN 
      lang=zh-cn>;</SPAN></P>
      <P><SPAN lang=zh-cn>至于總的工程,隨你便,我圖方便,還是叫</SPAN>:Project1.bpr<SPAN 
      lang=zh-cn>。</SPAN></P>
      <P> </P>
      <P><IMG src="教學--第十四章 程序的文件結構.files/ls14.h1.jpg" align=left border=0><SPAN 
      lang=zh-cn>(現在我們第一次在一個工程中用到多個源文件。所以你得學會如何快速打開一個工程中某個源文件——當然,現在這三個文件都已經打開著,不過假設你有點事關閉CB,我們不希望下回打開這個工程時,你“找”不到第2和第3個文件了——請點擊CB工具欄上的這個圖標:<IMG 
      src="教學--第十四章 程序的文件結構.files/ls14.h3.gif" 
      border=0>,將出現源文件列表對話框,如左圖)</SPAN></P>
      <P> </P>
      <P> </P>
      <P>接下來講在這三個文件中,我們分別寫些什么?大多數代碼我們都已經在前面學過,所以我對代碼的功能不作太多的解釋。我們的重點是:三個源文件之間的代碼如何實現“溝通”。</P>
      <P> </P>
      <P><B>第一個文件:main.cpp</B> 用來實現程序的主流程。</P>
      <P><SPAN lang=zh-cn>在 main.cpp 中的main()函數內,我們加入代碼。</SPAN></P>
      <P> </P>
      <P>#include &lt;iostream.h&gt;</P>

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
日本午夜一区二区| 亚洲国产另类精品专区| 欧美一区二区三区精品| 色婷婷av一区二区三区软件| 99热在这里有精品免费| 99综合影院在线| av电影在线观看一区| 91丨porny丨最新| 日本丰满少妇一区二区三区| 色天天综合色天天久久| 欧美视频第二页| 91精品国产福利在线观看| 日韩欧美一级片| 久久久久久久久伊人| 国产人成亚洲第一网站在线播放| 国产欧美日韩综合精品一区二区| 中文一区在线播放| 亚洲男人的天堂在线aⅴ视频| 亚洲一区二区欧美| 日本成人中文字幕在线视频| 麻豆精品在线看| 丁香婷婷综合网| 在线观看亚洲一区| 欧美一级高清片| 国产亚洲欧洲997久久综合| 综合久久给合久久狠狠狠97色| 自拍偷在线精品自拍偷无码专区| 亚洲国产一区二区在线播放| 日韩精品乱码av一区二区| 精品午夜久久福利影院| 成人av在线影院| 555夜色666亚洲国产免| 国产亚洲欧美日韩日本| 一区二区三区蜜桃| 九九精品一区二区| 91一区一区三区| 精品日韩欧美一区二区| 亚洲精品视频在线看| 美女诱惑一区二区| 色综合久久综合网97色综合| 精品国产区一区| 亚洲一区二区在线观看视频| 国产一区二区精品在线观看| 91看片淫黄大片一级在线观看| 69久久99精品久久久久婷婷| 国产精品传媒视频| 黄页网站大全一区二区| 欧美日韩高清一区| 国产精品高潮久久久久无| 韩国av一区二区| 91精品欧美综合在线观看最新| 专区另类欧美日韩| 国产二区国产一区在线观看| 欧美日韩一级大片网址| 亚洲欧美视频在线观看视频| 国产一区视频网站| 日韩一区二区在线观看| 亚洲国产一区视频| 91国在线观看| 国产精品欧美一区二区三区| 经典一区二区三区| 欧美电视剧在线看免费| 日本免费在线视频不卡一不卡二| 欧美系列亚洲系列| 一二三四社区欧美黄| 色婷婷综合激情| 亚洲蜜桃精久久久久久久| 成人午夜看片网址| 欧美国产97人人爽人人喊| 国产精品一卡二| 国产网站一区二区| 国产在线精品免费av| 欧美第一区第二区| 激情小说亚洲一区| 精品国产三级电影在线观看| 久久成人免费网站| 26uuu亚洲| 国产精品99久久久久久久女警 | 亚洲女同一区二区| 国产99久久久国产精品潘金| 精品国产99国产精品| 国产成人在线电影| 中文字幕第一页久久| thepron国产精品| 亚洲综合网站在线观看| 欧美喷潮久久久xxxxx| 日韩av中文字幕一区二区| 91精品国产91久久综合桃花| 九色porny丨国产精品| 国产性做久久久久久| 99久精品国产| 日韩一区在线看| 99久久精品国产一区二区三区 | 亚洲超碰精品一区二区| 欧美一区二区免费观在线| 激情欧美日韩一区二区| 国产精品视频第一区| 欧日韩精品视频| 麻豆国产欧美日韩综合精品二区| 精品国产一区二区三区忘忧草 | 国产不卡视频在线观看| 综合激情成人伊人| 欧美一区二区性放荡片| 国产成人鲁色资源国产91色综| 亚洲精品欧美综合四区| 欧美一区二区三区精品| 从欧美一区二区三区| 亚洲国产毛片aaaaa无费看 | 久久精品欧美日韩| 欧美综合一区二区| 国产在线播精品第三| 1024国产精品| 精品福利一区二区三区| 日本韩国欧美国产| 国产精品99久久久久| 婷婷久久综合九色国产成人| 久久久精品免费免费| 欧美日韩国产综合一区二区| 国产一区二区三区在线观看免费 | 欧美精品vⅰdeose4hd| 国产69精品一区二区亚洲孕妇| 亚洲国产婷婷综合在线精品| 国产视频一区二区在线| 欧美日韩国产天堂| 色狠狠色噜噜噜综合网| 国产成人在线影院| 裸体在线国模精品偷拍| 午夜婷婷国产麻豆精品| 中文字幕色av一区二区三区| 精品成人一区二区| 91精品国产入口| 91首页免费视频| 成人一级黄色片| 国模无码大尺度一区二区三区| 亚洲黄色录像片| 亚洲三级电影网站| 中文字幕的久久| 久久久亚洲国产美女国产盗摄| 91精品国产入口在线| 精品视频999| 欧美日韩一卡二卡三卡| 欧美日韩在线不卡| 欧美日精品一区视频| 在线亚洲+欧美+日本专区| 99久久精品国产网站| 不卡大黄网站免费看| 国产成人免费高清| 从欧美一区二区三区| 国产99久久久久久免费看农村| 捆绑调教一区二区三区| 狠狠色丁香婷婷综合| 国产一区二区免费在线| 国产成人福利片| 波多野结衣91| 色综合天天狠狠| 欧美视频在线观看一区二区| 欧美性色欧美a在线播放| 精品视频免费在线| 日韩女优av电影在线观看| 日韩一区二区三区免费观看| 欧美一区二区性放荡片| 337p日本欧洲亚洲大胆精品| 精品欧美久久久| 国产亚洲自拍一区| 亚洲男人天堂一区| 亚洲chinese男男1069| 久久66热偷产精品| 国产·精品毛片| 91日韩精品一区| 制服丝袜激情欧洲亚洲| 亚洲精品一区二区三区蜜桃下载| 中文字幕乱码一区二区免费| 国产精品久久精品日日| 亚洲制服丝袜av| 蜜桃视频一区二区三区 | 国产精品盗摄一区二区三区| 1区2区3区欧美| 日产国产高清一区二区三区| 精品一区二区在线看| 91在线视频在线| 3atv一区二区三区| 亚洲国产电影在线观看| 亚洲国产精品综合小说图片区| 久久精品国内一区二区三区| 成人一级视频在线观看| 欧美精品日韩综合在线| 亚洲国产精品t66y| 丝袜美腿亚洲一区| 成人免费视频视频在线观看免费| 91久久国产最好的精华液| 精品乱码亚洲一区二区不卡| 亚洲人成伊人成综合网小说| 九一九一国产精品| 欧美系列亚洲系列| 欧美国产视频在线| 美女一区二区在线观看| 在线观看不卡视频| 国产视频一区二区在线观看| 日韩综合一区二区| 91免费版在线看|