av手机免费在线观看,国产女人在线视频,国产xxxx免费,捆绑调教一二三区,97影院最新理论片,色之久久综合,国产精品日韩欧美一区二区三区

試題

計(jì)算機(jī)二級C++考點(diǎn)類的轉(zhuǎn)換

時(shí)間:2025-05-20 18:00:59 試題 我要投稿
  • 相關(guān)推薦

2017計(jì)算機(jī)二級C++考點(diǎn)類的轉(zhuǎn)換

  引導(dǎo)語:類的轉(zhuǎn)換是計(jì)算機(jī)二級C++的一個(gè)考點(diǎn),以下是百分網(wǎng)小編分享給大家的2017計(jì)算機(jī)二級C++考點(diǎn)類的轉(zhuǎn)換,歡迎閱讀!

  類的轉(zhuǎn)換

  C++的內(nèi)部數(shù)據(jù)類型遵循隱式類型轉(zhuǎn)換規(guī)則。假設(shè)某個(gè)表達(dá)市中使用了一個(gè)短整型變量,而編譯器根據(jù)上下文認(rèn)為這兒需要是的長整型,則編譯器就會(huì)根據(jù)類型轉(zhuǎn)換規(guī)則自動(dòng)把它轉(zhuǎn)換成長整型,這種隱式轉(zhuǎn)換出現(xiàn)在賦值、參數(shù)傳遞、返回值、初始化和表達(dá)式中。我們也可以為類提供相應(yīng)的轉(zhuǎn)換規(guī)則。

  對一個(gè)類建立隱式轉(zhuǎn)換規(guī)則需要構(gòu)造一個(gè)轉(zhuǎn)換函數(shù),該函數(shù)作為類的成員,可以把該類的對象和其他數(shù)據(jù)類型的對象進(jìn)行相互轉(zhuǎn)換。聲明了轉(zhuǎn)換函數(shù),就告訴了編譯器,當(dāng)根據(jù)句法判定需要類型轉(zhuǎn)換時(shí),就調(diào)用函數(shù)。

  有兩種轉(zhuǎn)換函數(shù)。一種是轉(zhuǎn)換構(gòu)造函數(shù);另一種是成員轉(zhuǎn)換函數(shù)。需要采用哪種轉(zhuǎn)換函數(shù)取決于轉(zhuǎn)換的方向。

  轉(zhuǎn)換構(gòu)造函數(shù)

  當(dāng)一個(gè)構(gòu)造函數(shù)僅有一個(gè)參數(shù),且該參數(shù)是不同于該類的一個(gè)數(shù)據(jù)類型,這樣的構(gòu)造函數(shù)就叫轉(zhuǎn)換構(gòu)造函數(shù)。轉(zhuǎn)換構(gòu)造函數(shù)把別的數(shù)據(jù)類型的對象轉(zhuǎn)換為該類的一個(gè)對象。和其他構(gòu)造函數(shù)一樣,如果聲明類的對象的初始化表同轉(zhuǎn)換構(gòu)造函數(shù)的參數(shù)表相匹配,該函數(shù)就會(huì)被調(diào)用。當(dāng)在需要使用該類的地方使用了別的數(shù)據(jù)類型,便宜器就會(huì)調(diào)用轉(zhuǎn)換構(gòu)造函數(shù)進(jìn)行轉(zhuǎn)換。

  #include iostream.h

  #include time.h

  #include stdio.h

  class Date

  {

  int mo, da, yr;

  public:

  Date(time_t);

  void display();

  };

  void Date::display()

  {

  char year[5];

  if(yr<10)

  sprintf(year,0%d,yr);

  else

  sprintf(year,%d,yr);

  cout< }

  Date::Date(time_t now)

  {

  tm* tim=localtime(&now);

  da=tim->tm_mday;

  mo=tim->tm_mon+1;

  yr=tim->tm_year;

  if(yr>=100) yr-=100;

  }

  int main()

  {

  time_t now=time(0);

  Date dt(now);

  dt.display();

  return 0;

  }

  本程序先調(diào)用time()函數(shù)來獲取當(dāng)前時(shí)間,并把它賦給time_t對象;然后程序通過調(diào)用Date類的轉(zhuǎn)換構(gòu)造函數(shù)來創(chuàng)建一個(gè)Date對象,該對象由time_t對象轉(zhuǎn)換而來。time_t對象先傳遞給localtime()函數(shù),然后返回一個(gè)指向tm結(jié)構(gòu)(time.h文件中聲明)的指針,然后構(gòu)造函數(shù)把結(jié)構(gòu)中的日月年的數(shù)值拷貝給Date對象的數(shù)據(jù)成員,這就完成了從time_t對象到Date對象的轉(zhuǎn)換。

【計(jì)算機(jī)二級C++考點(diǎn)類的轉(zhuǎn)換】相關(guān)文章:

C++類的轉(zhuǎn)換10-17

計(jì)算機(jī)二級考試《C++》復(fù)習(xí)資料:類的轉(zhuǎn)換08-12

計(jì)算機(jī)二級C++考點(diǎn):C++語言概述07-17

計(jì)算機(jī)二級C++函數(shù)考點(diǎn)07-22

計(jì)算機(jī)二級《C++》考點(diǎn)解析:堆和類數(shù)組07-20

計(jì)算機(jī)二級C++考點(diǎn):基本控制結(jié)構(gòu)10-18

2017計(jì)算機(jī)二級C++考點(diǎn)習(xí)題及答案07-07

2016最新計(jì)算機(jī)二級C++考點(diǎn)解析「模板」10-19

C++的類型轉(zhuǎn)換介紹11-08