C++類聲明和成員函數定義 | 引用多個成員對象

C++類聲明和成員函數定義的分離

在C++中,一般做法是將類的聲明放在指定的頭文件中,程序員如果想用該類,只要把有關的頭文件包含進來即可,不必在程序中重複書寫類的聲明,以減少工 作量,提高編程的效率。

由於在頭文件中包含了類的聲明,因此在程序中就 可以用該類來定義對象,由於在類體中包含了對成員函數的聲明,在程序中就可以調用這些對象的公用成員函數。

在C++中,如果一個類聲明多次被不同的程序所選用,可以不必每次都對它重複進行編譯,而只需編譯一次即可,把第一次編譯後所形成的目標文件保存起來,以後在需要時把它調出來直接與程序的目標文件相連接即可。

在實際C++開發中,並不是將一個類聲明做成一個頭文件,而是將若干個常用的功能相近的類聲明集中在一起,形成類庫。

C++類庫有兩種:

C++編譯系統提供的標準類庫
自定義類庫,用戶根據自己的需要做成的用戶類庫, 提供給自己和自己授權的人使用。

C++類庫包括兩個組成部分:

類聲明頭文件
已經過編譯的成員函數的定義,它是目標文件。

案例:C++引用多個對象的成員。

#include<iostream>//預處理
using namespace std;//命名空間 
class Time
{
   
   
  public: //聲明以下是公用的
    int day;
    int hour;
    int minute; 
};
int main()//主函數 
{
   
   
  Time time1;//定義time1爲Time類對象
  cout<<"輸入天:"<<endl; 
  cin>>time1.day;
  cout<<"輸入小時:"<<endl;
  cin>>time1.hour;
  cout<<"輸入分鐘:"<<endl;
  cin>>time1.minute;
  cout<<"寫這篇文章是"<<time1.day<<"號,";
  cout<<time1.hour<<"點:";
  cout<<time1.minute<<"分"<<endl;
  cout<<"------------------------------"<<endl;
  Time time2;//定義time2爲Time類對象
  cout<<"輸入天:"<<endl; 
  cin>>time2.day;
  cout<<"輸入小時:"<<endl;
  cin>>time2.hour;
  cout<<"輸入分鐘:"<<endl;
  cin>>time2.minute;
  cout<<"寫這篇文章是"<<time2.day<<"號,";
  cout<<time2.hour<<"點:";
  cout<<time2.minute<<"分"<<endl;
  return 0; //函數返回值爲0;
}

編譯運行結果:

輸入天:
24
輸入小時:
20
輸入分鐘:
25
寫這篇文章是24號,20點:25------------------------------
輸入天:
18
輸入小時:
15
輸入分鐘:
56
寫這篇文章是18號,15點:56--------------------------------
Process exited after 19.05 seconds with return value 0
請按任意鍵繼續. . .

上述代碼,讀者可以自己嘗試優化一下,比如把輸入輸出單獨抽取爲一個方法。

以上,如果你看了覺得對你有所幫助,就給小林點個贊叭,這樣小林也有更新下去的動力,跪謝各位父老鄉親啦~
C++類聲明和成員函數定義
更多案例可以go公衆號:C語言入門到精通

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章