中文亚洲精品无码_熟女乱子伦免费_人人超碰人人爱国产_亚洲熟妇女综合网

當(dāng)前位置: 首頁 > news >正文

外協(xié)機(jī)械加工訂單sem和seo有什么區(qū)別

外協(xié)機(jī)械加工訂單,sem和seo有什么區(qū)別,網(wǎng)頁制作基礎(chǔ)教程frontpage,鄭州治療精神病哪家好代碼負(fù)責(zé)釋放對(duì)象之前已經(jīng)分配的資源,比如堆上的內(nèi)存。在執(zhí)行深拷貝之前,你需要確保對(duì)象不再引用之前的資源,以避免內(nèi)存泄漏。通過刪除先前的資源,你可以確保在進(jìn)行深拷貝之前,已經(jīng)釋放了之前的資源,從而避…

代碼負(fù)責(zé)釋放對(duì)象之前已經(jīng)分配的資源,比如堆上的內(nèi)存。在執(zhí)行深拷貝之前,你需要確保對(duì)象不再引用之前的資源,以避免內(nèi)存泄漏。通過刪除先前的資源,你可以確保在進(jìn)行深拷貝之前,已經(jīng)釋放了之前的資源,從而避免了資源泄漏。

當(dāng)一個(gè)對(duì)象擁有動(dòng)態(tài)分配的資源(比如堆上的內(nèi)存),并且你希望將另一個(gè)對(duì)象的內(nèi)容賦值給它時(shí),你需要確保在賦值之前釋放已經(jīng)分配的資源,以避免內(nèi)存泄漏。下面是一個(gè)具體的示例:

假設(shè)你有一個(gè)自定義的類 IntArray,它包含一個(gè)整數(shù)指針 array,用于存儲(chǔ)動(dòng)態(tài)分配的整數(shù)數(shù)組,以及一個(gè)整數(shù) nElements,表示數(shù)組中的元素?cái)?shù)量。你的類如下所示:

class IntArray {
private:int *array;int nElements;public:// 構(gòu)造函數(shù)IntArray(int size) {nElements = size;array = new int[size];}// 析構(gòu)函數(shù)~IntArray() {delete[] array;}// 賦值運(yùn)算符重載IntArray &operator=(const IntArray &src) {if (this != &src) { // 防止無效的自我賦值delete[] array; // 釋放現(xiàn)有資源deepCopy(src);  // 執(zhí)行深拷貝}return *this;}// 深拷貝函數(shù)void deepCopy(const IntArray &src) {nElements = src.nElements;array = new int[nElements];for (int i = 0; i < nElements; ++i) {array[i] = src.array[i];}}// 其他方法和成員變量// ...
};

現(xiàn)在,考慮以下情況,你有兩個(gè) IntArray 對(duì)象 array1array2

IntArray array1(5); // 創(chuàng)建 array1,分配了一個(gè)包含5個(gè)整數(shù)的數(shù)組
IntArray array2(3); // 創(chuàng)建 array2,分配了一個(gè)包含3個(gè)整數(shù)的數(shù)組
array1 = array2; // 賦值操作

在這個(gè)賦值操作之前,array1 已經(jīng)擁有了一個(gè)包含5個(gè)整數(shù)的數(shù)組,而 array2 擁有一個(gè)包含3個(gè)整數(shù)的數(shù)組。為了執(zhí)行賦值操作,你需要確保在將 array2 的內(nèi)容復(fù)制到 array1 之前,釋放了 array1 之前分配的資源,以避免內(nèi)存泄漏。

這就是為什么在賦值運(yùn)算符重載函數(shù)中存在 delete[] array; 這行代碼的原因。它的目的是在執(zhí)行深拷貝之前釋放 array1 的資源,然后再為 array1 分配新的資源,確保 array1array2 是獨(dú)立的,不會(huì)導(dǎo)致內(nèi)存泄漏。

在這段代碼中,src、&src、thisarray 分別指代以下內(nèi)容:

  1. src:這是函數(shù)的參數(shù),表示傳遞給賦值運(yùn)算符重載函數(shù)的右操作數(shù),即源對(duì)象。src 是一個(gè) const IntArray & 類型的引用,表示它是一個(gè) IntArray 類的對(duì)象的引用,該對(duì)象將用于賦值操作。

  2. &src:這是 src 的地址,表示源對(duì)象 src 在內(nèi)存中的位置。& 運(yùn)算符用于獲取變量或?qū)ο蟮牡刂贰T谶@里,它用于比較 thissrc 是否相同,以檢查是否發(fā)生了自我賦值。

  3. this:這是指向當(dāng)前對(duì)象的指針,即調(diào)用賦值運(yùn)算符重載函數(shù)的對(duì)象的指針。在這個(gè)上下文中,this 表示正在執(zhí)行賦值操作的目標(biāo)對(duì)象,即接收賦值的對(duì)象。

  4. array:這是當(dāng)前對(duì)象 this 中的成員變量,表示整數(shù)指針,用于存儲(chǔ)動(dòng)態(tài)分配的整數(shù)數(shù)組。delete[] array; 行代碼用于釋放當(dāng)前對(duì)象 this 中的數(shù)組資源。

那為什么this對(duì)象可以跟地址比較?

`this` 指針是一個(gè)指向當(dāng)前對(duì)象的指針,在 C++ 中,它是一個(gè)隱式參數(shù),傳遞給成員函數(shù)以表示調(diào)用該函數(shù)的對(duì)象。因此,`this` 指針可以用于在成員函數(shù)內(nèi)部訪問對(duì)象的成員變量和方法。

在這段代碼中,`this` 指針用于表示當(dāng)前對(duì)象,而 `&src` 用于表示傳遞給賦值運(yùn)算符重載函數(shù)的源對(duì)象 `src` 的地址。通過比較 `this` 和 `&src`,代碼檢查是否發(fā)生了自我賦值,即是否試圖將對(duì)象賦值給它自己。

如果 `this` 和 `&src` 是相同的,這意味著賦值操作試圖將對(duì)象賦值給它自己,這是一個(gè)無效的操作,可能會(huì)導(dǎo)致問題,因此需要避免。所以,通過比較 `this` 和 `&src`,可以防止自我賦值情況的發(fā)生。

那為啥不是this和src比較或者this→array和&src比較

?

在 C++ 中,`this` 是一個(gè)指向當(dāng)前對(duì)象的指針,`src` 是一個(gè)表示傳遞給賦值運(yùn)算符重載函數(shù)的源對(duì)象的引用。它們具有不同的類型和語義,因此不能直接進(jìn)行比較。具體來說:

1. `this` 是一個(gè)指向當(dāng)前對(duì)象的指針,類型為 `IntArray*`。它用于在成員函數(shù)內(nèi)部訪問對(duì)象的成員變量和方法。

2. `src` 是一個(gè)表示傳遞給賦值運(yùn)算符重載函數(shù)的源對(duì)象的引用,類型為 `const IntArray&`。它是一個(gè)對(duì)象的別名,用于訪問源對(duì)象的數(shù)據(jù)。

這兩者之間的比較是沒有意義的,因?yàn)樗鼈兇砹瞬煌母拍詈蛿?shù)據(jù)類型。在自我賦值檢查中,我們關(guān)心的是比較當(dāng)前對(duì)象和源對(duì)象是否是同一個(gè)對(duì)象。為了執(zhí)行這個(gè)比較,我們使用 `this` 指針和 `&src`,因?yàn)樗鼈兎謩e表示當(dāng)前對(duì)象和源對(duì)象在內(nèi)存中的位置(地址),從而允許我們進(jìn)行地址比較。

要比較對(duì)象的成員變量,你需要使用成員訪問運(yùn)算符 `.` 來訪問對(duì)象的成員變量,例如 `this->array` 和 `src.array`。然而,這不會(huì)執(zhí)行自我賦值檢查,因?yàn)樗皇潜容^成員變量的值,而不是對(duì)象的身份。在自我賦值檢查中,我們關(guān)心的是對(duì)象的身份,即對(duì)象是否相同,因此需要比較它們的地址。

http://www.risenshineclean.com/news/61352.html

相關(guān)文章:

  • html5網(wǎng)站模板 站長網(wǎng)百度云網(wǎng)盤免費(fèi)資源
  • 網(wǎng)站開發(fā)及運(yùn)營代理協(xié)議范本友情鏈接怎么做
  • 兩學(xué)一做 網(wǎng)站網(wǎng)絡(luò)安全培訓(xùn)機(jī)構(gòu)排名
  • 神農(nóng)架網(wǎng)站建設(shè)公司阿里云建網(wǎng)站
  • 企業(yè)網(wǎng)站數(shù)防泄露怎么做開車搜索關(guān)鍵詞
  • 自建站需要多少錢中國培訓(xùn)網(wǎng)官網(wǎng)
  • 網(wǎng)站seo推廣公司靠譜嗎電商平臺(tái)推廣怎么做
  • 笑傲網(wǎng)站建設(shè)南京關(guān)鍵詞網(wǎng)站排名
  • 北京商城網(wǎng)站開發(fā)百度下載安裝2021最新版
  • 臺(tái)州cms建站系統(tǒng)百度官網(wǎng)下載安裝
  • 金溪縣建設(shè)局網(wǎng)站網(wǎng)站開發(fā)費(fèi)用
  • 國內(nèi)外貿(mào)b2c網(wǎng)站運(yùn)營seo是什么意思
  • 惠州企業(yè)建站模板百度推廣多少錢一個(gè)月
  • 優(yōu)設(shè)網(wǎng)網(wǎng)站倉山區(qū)seo引擎優(yōu)化軟件
  • 網(wǎng)站開發(fā)東莞如何推廣網(wǎng)上國網(wǎng)
  • 網(wǎng)站二級(jí)頁怎么做寧波網(wǎng)站推廣優(yōu)化公司怎么樣
  • ic外貿(mào)網(wǎng)站建設(shè)網(wǎng)絡(luò)媒體有哪些
  • 2018年網(wǎng)站建設(shè)培訓(xùn)會(huì)發(fā)言營銷互聯(lián)網(wǎng)推廣公司
  • 網(wǎng)站的關(guān)于頁面寧波seo關(guān)鍵詞
  • 免費(fèi)試用網(wǎng)站空間成都十大營銷策劃公司
  • 最全的數(shù)據(jù)網(wǎng)站寧波seo費(fèi)用
  • 鄭州發(fā)布seo具體是什么
  • 網(wǎng)絡(luò)有限公司做女裝網(wǎng)站的百度一下百度搜索百度
  • 做h的游戲 迅雷下載網(wǎng)站線上推廣100種方式
  • 衡水網(wǎng)頁網(wǎng)站建設(shè)企業(yè)網(wǎng)絡(luò)營銷策劃
  • 寧陵做網(wǎng)站雅虎搜索引擎中文版
  • 想學(xué)網(wǎng)站制作網(wǎng)絡(luò)軟件開發(fā)
  • php網(wǎng)站開發(fā)需要學(xué)什么怎么宣傳自己新開的店鋪
  • 網(wǎng)站開發(fā)績效考核站長工具友鏈檢測(cè)
  • 泰安的網(wǎng)站建設(shè)公司哪家好正規(guī)推廣平臺(tái)