中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

LeetCode如何實現賦值運算符重載

發布時間:2021-12-15 14:21:17 來源:億速云 閱讀:115 作者:小新 欄目:編程語言

這篇文章將為大家詳細講解有關LeetCode如何實現賦值運算符重載,小編覺得挺實用的,因此分享給大家做個參考,希望大家閱讀完這篇文章后可以有所收獲。

1 #include<stdio.h>                                                                                                                         
  2 #include<assert.h>
  3 
  4 class MyString
  5 {
  6 public:
  7     MyString()
  8     {
  9         _data = new char[1];
 10         _data = '\0';
 11     }
 12 
 13     MyString(char* str)
 14     {
 15         assert(str);
 16         _data = new char[strlen(str) + 1];
 17         strcpy(_data, str);
 18     }
 19 
 20     MyString(const MyString& string)
 21     {
 22         assert(string._data);
 23         _data = new char[strlen(string._data) + 1];
 24         strcpy(_data, string._data);
 25     }
 26 
 27     ~MyString()
 28     {
 29         delete[] _data;
 30     }
 31 
 32     MyString& operator= (const MyString& string)
 33     {
 34         assert(string._data);
 35         if(*this == string)
 36         {
 37             return *this;
 38         }
 39 
 40         delete[] _data;
 41         _data = NULL;
 42         _data = new char[strlen(string._data) + 1];
 43         strcpy(_data, string._data);
 44         return *this;
 45     }
 46 
 47 protected:
 48     char* _str;
 49 }
1 #include<stdio.h>
  2 #include<assert.h>
  3 
  4 class MyString
  5 {
  6 public:
  7     MyString()
  8     {
  9         _data = new char[1];
 10         _data = '\0';
 11     }
 12 
 13     MyString(char* str)
 14     {
 15         assert(str);
 16         _data = new char[strlen(str) + 1];
 17         strcpy(_data, str);
 18     }
 19 
 20     MyString(const MyString& string)
 21     {
 22         assert(string._data);
 23         _data = new char[strlen(string._data) + 1];
 24         strcpy(_data, string._data);
 25     }
 26                                                                                                                                           
 27     ~MyString()
 28     {
 29         delete[] _data;
 30     }
 31 
 32     MyString& operator= (const MyString& string)
 33     {
 34         assert(string._data);
 35         if(*this != string)
 36         {
 37             MyString tem(string);
 38 
 39             char* del = tem._data
 40             tem._data = _data;
 41             _data = del;
 42         }
 43         return *this;
 44     }
 45 
 46 protected:
 47     char* _str;
 48 }

關于“LeetCode如何實現賦值運算符重載”這篇文章就分享到這里了,希望以上內容可以對大家有一定的幫助,使各位可以學到更多知識,如果覺得文章不錯,請把它分享出去讓更多的人看到。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

东乌珠穆沁旗| 库伦旗| 广宁县| 安丘市| 云霄县| 高台县| 农安县| 濮阳市| 苗栗市| 湖口县| 晋宁县| 盐池县| 句容市| 龙游县| 澄迈县| 秦安县| 正蓝旗| 中超| 三都| 巩留县| 府谷县| 内江市| 祁阳县| 双峰县| 蚌埠市| 外汇| 元阳县| 固始县| 凤凰县| 利辛县| 临夏市| 南陵县| 南充市| 黑龙江省| 鲁甸县| 呼伦贝尔市| 布尔津县| 绥芬河市| 上林县| 扎囊县| 峨山|