程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> C語言 >> C++ >> C++入門知識 >> C++語言學習總結之談

C++語言學習總結之談

編輯:C++入門知識

要對C++語言學習時,一定要了解什麼是C++語言以及C++的構成,C++設計成盡可能與C兼容,C++中提供一個從C到C++的平滑過渡,C++避免平台限定或沒有普遍用途的特性。

在面向對象的程序設計中,對象具有狀態(屬性)和行為,狀態保存在成員變量中,行為通過成員方法(函數)來實現。C語言中的結構體只能描述一個對象的狀態,不能描述一個對象的行為。在C++語言學習中,對結構體進行了擴展,C++的結構體可以包含函數。

1、結構體的定義
下面我們看看如例1所示的程序(EX01.C )。

  1. #include   
  2. struct point  
  3. {  
  4.   int x;   
  5.   int y;   
  6. };  
  7.  
  8. void main()  
  9. {  
  10.   point pt;   
  11.   pt.x=0;   
  12.   pt.y=0;   
  13.   cout<<PT.X<<ENDL<<PT.Y<<ENDL;   
  14. }  

在這段程序中,我們定義了一個C語言結構體point,在這個結構體當中,定義了兩個整型的變量,作為一個點的X坐標和Y坐標。在main函數中,定義了一個結構體的變量pt,對pt的兩個成員變量進行賦值,然後調用C++的輸出流類的對象cout將這個點的坐標輸出。

C++中預定義了三個標准輸入輸出流對象:cin(標准輸入)、cout(標准輸出)和cerr(標准錯誤輸出)。cin與輸入操作符(> gt;)一起用於從標准輸入讀入數據。cout與輸出操作符(< lt;)一起用於輸出數據到標准輸出上,cerr與輸出操作符(< lt;)一起用於輸出錯誤信息到標准錯誤上(一般同標准輸出)。默認的標准輸入通常為鍵盤,默認的標准輸出和標准錯誤輸出通常為顯示器。

cin和cout的使用比C語言中的scanf和printf要簡單得多。使用cin和cout你不需要去考慮輸入和輸出的數據的類型,cin和cout可以自動根據數據的類型調整輸入輸出的格式。對於輸出來說,按照例1中所示的方式調用就可以了,對於輸入來說,我們以如下方式調用即可:

注意:在使用cin和cout對象時,要注意箭頭的方向。在輸出中我們還使用了endl(end of line),表示換行,注意最後一個是字母‘l’,而不是數字1。endl相當於C語言的'/n',endl在輸出流中插入一個換行,並刷新輸出緩沖區。

因為用到了C++語言學習的標准輸入輸出流,所以我們需要包含iostream.h這個頭文件,就像我們在C語言中用到了printf和scanf函數時,要包含C的標准輸入輸出頭文件stdio.h。提示:在定義結構體時,一定C語言不要忘了在右花括號處加上一個分號(;)。我們將結構體point的定義修改一下,結果如例2所示:

  1. struct point  
  2. {  
  3.   int x;   
  4.   int y;   
  5.   void output()   
  6.   {   
  7.  cout<<X<<ENDL<<Y<<ENDL;   
  8.   }   
  9. };  
  10. 在point這個結構體中加入了一個函數output。我們知道在C語言中,結構體中是不能有函數的,然而在C++中,結構體中是可以有函數的,稱為成員函數。這樣,在main函數中就可以以如下方式調用:   
  11.  
  12.  cout<<X<<ENDL<<Y<<ENDL;   
  13.   }   
  14. }; 

這就是C++語言學習的類的定義,看起來是不是和結構體的定義很類似?在C++語言學習中,結構體是用關鍵字struct聲明的類。類和結構體的定義除了使用關鍵字“cla ”和“struct”不同之外,更重要的是在成員的訪問控制方面有所差異。

  1. C與C++中標准輸入實現方式上的一點區別
  2. C++編譯器如何對Const常量進行分配存儲空間
  3. C++類庫設計的基本構思與方法
  4. 玩轉C++語言的幾種方法
  5. 如何更好的進行C++代碼編制

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved