黄色在线观看视频-黄色在线免费看-黄色在线视频免费-黄色在线视频免费看-免费啪啪网-免费啪啪网站

首頁 - 網校 - 萬題庫 - 美好明天 - 直播 - 導航
您現在的位置: 考試吧 > 計算機等級考試 > 計算機二級考試 > C加加 > 復習資料 > 正文

計算機二級C++語言程序設計考試輔導筆記(七)

來源:考試吧 2018-03-26 10:02:09 要考試,上考試吧! 萬題庫
“計算機二級C++語言程序設計考試輔導筆記(七)”供考生參考。更多計算機等級考試內容請訪問考試吧計算機等級考試網。

  二、重載賦值運算符

  為了解決上面的問題,我們應該寫一個特殊的賦值運算符函數來處理這類問題。當需要為同一個類的兩個對象相互賦值時,就可以重載運算符函數。這個方法可以解決類的賦值和指針的釋放。

  下面的程序中,類中的賦值函數用new運算符從堆中分配了一個不同的指針,該指針獲取賦值對象中相應的值,然后拷貝給接受賦值的對象。

  在類中重載賦值運算符的格式如下:

  void operator = (const Date&)

  后面我們回加以改進。目前,重載的運算符函數的返回類型為void。它是類總的成員函數,在本程序紅,是Date類的成員函數。它的函數名始終是operator =,參數也始終是同一個類的對象的引用。參數表示的是源對象,即賦值數據的提供者。重載函數的運算符作為目標對象的成員函數來使用。

  #include iostream.h

  #include string.h

  class Date

  {

  int mo,da,yr;

  char *month;

  public:

  Date(int m=0, int d=0, int y=0);

  ~Date();

  void operator=(const Date&);

  void display() const;

  };

  Date::Date(int m, int d, int y)

  {

  static char *mos[] =

  {

  January,February,March,April,May,June,

  July,August,September,October,November,December

  };

  mo = m; da = d; yr = y;

  if (m != 0)

  {

  month = new char[strlen(mos[m-1])+1];

  strcpy(month, mos[m-1]);

  }

  else month = 0;

  }

  Date::~Date()

  {

  delete [] month;

  }

  void Date::display() const

  {

  if (month!=0) cout< char name[25];

  cin >> name;

  if (strncmp(name, end, 3) == 0) break;

  ListEntry* list = new ListEntry(name);

  if (prev != 0) prev->AddEntry(*list);

  prev = list;

  }

  while (prev != 0)

  {

  prev->display();

  ListEntry* hold = prev;

  prev = prev->PrevEntry();

  delete hold;

  }

  return 0;

  }

  程序運行時,會提示輸入一串姓名,當輸入完畢后,鍵入end,然后程序會逆序顯示剛才輸入的所有姓名。

  程序中ListEntry類含有一個字符串和一個指向前一個表項的指針。構造函數從對中獲取內存分配給字符串,并把字符串的內容拷貝到內存,然后置鏈接指針為NULL。析構函數將釋放字符串所占用的內存。

  成員函數PrevEntry()返回指向鏈表前一個表項的指針。另一個成員函數顯示當前的表項內容。

  成員函數AddEntry(),它把this指針拷貝給參數的preventry指針,即把當前表項的地址賦值給下一個表項的鏈接指針,從而構造了一個鏈表。它并沒有改變調用它的listEntry對象的內容,只是把該對象的地址賦給函數的參數所引用的那個ListEntry對象的preventry指針,盡管該函數不會修改對象的數據,但它并不是常量型。這是因為,它拷貝對象的地址this指針的內容給一個非長常量對象,而編譯器回認為這個非常量對象就有可能通過拷貝得到的地址去修改當前對象的數據,因此AddEntry()函數在聲明時不需要用const。

掃描/長按二維碼幫助考試通關
2018年等考報考資訊
2018等考各科通關技巧
2018各科最新預測試卷
2018等考各科備考資料

微信搜索"考試吧"了解更多考試資訊、下載備考資料

上一頁  1 2 

  相關推薦:

  2018年全國計算機等級考試必做試題匯總(各科目)

  2018年全國計算機等級考試復習知識點匯總(各科目)

  2018年全國計算機等級考試時間|教材目錄(2018年版)

  2018全國計算機等級考試備考經驗及應試技巧匯總

  考試內容|考試大綱|2018計算機等級考試科目

  歷年真題匯總|考試吧策劃:2018年計算機等級考試報考指南

0
收藏該文章
0
收藏該文章
文章搜索
萬題庫小程序
萬題庫小程序
·章節視頻 ·章節練習
·免費真題 ·模考試題
微信掃碼,立即獲取!
掃碼免費使用
版權聲明:如果計算機等級考試網所轉載內容不慎侵犯了您的權益,請與我們聯系800@exam8.com,我們將會及時處理。如轉載本計算機等級考試網內容,請注明出處。
Copyright © 2004- 考試吧計算機等級考試網 出版物經營許可證新出發京批字第直170033號 
京ICP證060677 京ICP備05005269號 中國科學院研究生院權威支持(北京)
在線模擬試題
考證通關殺器
考試最新資訊
一次通關技巧
主站蜘蛛池模板: 九九精品视频一区在线 | 综合五月激情 | 最近2019免费中文字幕6 | 国产第一页福利 | 天天综合天天操 | 午夜欧美日韩 | 国产偷国产偷高清视频 | 免费簧片在线观看 | 制服丝袜在线一区 | 一级理论片| 欧美一级高清片在线 | 国产成人精品日本亚洲网站 | 99精品视频在线免费观看 | 一个人在线观看视频www | 99在线精品视频在线观看 | 小黄视频免费观看 | 精品成人免费一区二区在线播放 | 污网站免费在线观看 | 国产91在线chines看 | 久久五月视频 | 一区二区三区在线 | 国产日产欧产美一二三区 | 成人免费看黄网站无遮挡 | 国产99热99 | 黄色短视频在线免费观看 | 日本在线不卡一区二区 | 毛片免费永久不卡视频观看 | 天天舔舔 | 在线免费视频网站 | 天天影视色香欲综合网网站麻豆 | 一级做性色a爱片久久片 | 老司机午夜免费 | 日韩在线视频免费看 | 日韩精品视频免费 | 黄色三级视频 | 一级特黄a 大片免费 | 日韩一区二区三区在线观看 | 亚洲一二四区性毛片1在线 亚洲一二三在线 | 日韩精品国产自在久久现线拍 | 综合 欧美 亚洲日本 | 国产在线观看一区二区三区四区 |