- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第三章從C/C++到C++ Builder 為了強化C++ Builder的功能,C++ Builder透過類別的形式提供了大量的VCL元件,不但加速了程式的開發,也方便了程式的維護,但相對的也衍伸出許多C/C++中所沒有的資料型態和處理機制。本章將針對常用的型態與機制進行介紹,讓讀者熟悉C++ Builder的特有語法,也充分利用C++ Builder的強大功能。 大綱 3-1. 基本資料型態 3-2. AnsiString型態 3-3. 常用類別型態 3-4. 例外處理機制 3-5. 類別轉換機制 3-1. 基本資料型態 C/C++中紀錄基本資料型態所使用的記憶體大小會隨著編譯器的不同而有所不同,進而影響資料型態所能儲存的資料,底下為C++ Builder中對整數和浮點數基本型態的定義,包括使用的位元空間和所能表示的數值。 3-1. 基本資料型態 浮點數: 此外,C++ Builder和C/C++最大的差別在於它提供了對字串的支援,而非C/C++中使用的字元陣列或是字串指標,且在C++ Builder視窗環境中,使用字串的機會遠比字元陣列或是指標大的多,在3-2節中我們將有對字串的完整介紹。 3-2. AnsiString資料型態 在C++ Builder中的字串稱為AnsiString資料型態,該型態繼承至Delphi而來,原因在於C++ Builder共用了Delphi中的大部分VCL元件,而Delphi使用的Object Pascal語法擁有所謂的字串型態,為了能順利使用Delphi中的程式資源,所以繼承Delphi的字串型態(String)以方便對VCL元件進行設定的動作。 3-2-1. 使用AnsiString 要建立一個AnsiString有很多方法,其中最簡單方式就是和基本型態一樣以宣告的方式建立一個AnsiString型態的變數,除此,亦可透過Constructor建構子的使用來產生一個AnsiString變數,底下為幾種宣告的示範: 3-2. AnsiString資料型態 3-2. AnsiString資料型態 從上面的表格中可知,基本型態的數值幾乎都可以轉成AnsiString型態,而除了使用建構子達成轉換的目的外,C++ Builder還提供AnsiString和基本型態的轉換函式,列表如下: 3-2. AnsiString資料型態 除了可以自由轉換成熟悉的基本型態外,AnsiString相較於字串指標最大的優點在於可以使用運算元直接進行運算,使用方式就如同一般的基本型態,而不像字串指標的所有運算都必須靠函式的呼叫來完成 3-2. AnsiString資料型態 至此,可發現AnsiString不但可任意轉換型態,還能進行運算比較,比過去C/C++中使用的字串指標來的方便,但好戲還不止於此,C++ Builder對AnsiString型態提供了眾多的字串處理函式,讓基本的字串處理工作變的輕輕鬆鬆,這些函式將在下一小節說明。 3-2-2. AnsiString字串處理函式 AnsiString字串處理函式包羅萬象,下面僅就常用的函式進行說明和示範: 3-2. AnsiString資料型態 3-2. AnsiString資料型態 3-2. AnsiString資料型態 3-2. AnsiString資料型態 3-2. AnsiString資料型態 3-2. AnsiString資料型態 3-2. AnsiString資料型態 3-2. AnsiString資料型態 3-2. AnsiString資料型態 3-2. AnsiString資料型態 3-2. AnsiString資料型態 3-2. AnsiString資料型態 3-2. AnsiString資料型態 習慣了AnsiString型態和其提供的方法後,會發覺AnsiString在很多情況下都比過去的字串指標來的方便,尤其是在VCL元件屬性或方法設定上,但缺點就是所寫的程式碼不能在其他編譯器下進行編譯。 3-3. 常用類別型態 除了AnsiString字串型態外,C++ Builder為了元件的設定方便還提供了許多的類別型態,這些型態最常出現在元件的屬性或是方法指定上,底下我們僅就常用的TStrings、參數和時間相關類別型態進行介紹。 3-3-1. TStrings型態 TStrings為一個以列表方式紀錄AnsiString型態資料的類別,也就是以陣列方式來儲存大量的AnsiString資料,所以舉凡能以條列方式顯示文字資料的VCL元件幾乎都透過TStrings型態來紀錄所要顯示的內容,包括:TListBox、TComboBox、TMemo和TStringGrid元件,像TListBox和TComboBox使用TStrings類別的It
文档评论(0)