#include<iostream>
創(chuàng)新互聯(lián)是專業(yè)的福綿網(wǎng)站建設公司,福綿接單;提供成都網(wǎng)站設計、成都網(wǎng)站制作,網(wǎng)頁設計,網(wǎng)站設計,建網(wǎng)站,PHP網(wǎng)站建設等專業(yè)做網(wǎng)站服務;采用PHP框架,可快速的進行福綿網(wǎng)站開發(fā)網(wǎng)頁制作和功能擴展;專業(yè)做搜索引擎喜愛的網(wǎng)站,專業(yè)的做網(wǎng)站團隊,希望更多企業(yè)前來合作!
#include<string.h>
using namespace std;
class name{
public:
name(char *pn);
~name();
name::name(const name& n);
protected:
char *pname;
int size;
};
name::name(char *pn){
cout << "constructing" << pn << endl;
pname = new char[strlen(pn) + 1];
if (pname != 0)
strcpy_s(pname, strlen(pn) + 1, pn);
size = strlen(pn);
}
name::~name(){
cout << "Destructing" << pname << endl;
pname[0] = '\0';
delete[]pname;
size = 0;
}
name::name(const name& n){//拷貝構造函數(shù)。
cout << "call copy_constructor" << endl;
int size = n.size+1;
pname = new char[size ];//為其臨時對象申請個內(nèi)存。讓臨時對象的指針指向它。
//防止釋放臨時對象時把原來的對象的指針所指空間給弄亂
strcpy_s(pname, size,n.pname);//兩個參數(shù)不好辦,用三個參數(shù)。
}
void main(){
name Obj1("NoName");
cout << "strlen(\"NoName\")=" << strlen("NoName") << endl;
name Obj2 = Obj1;
system("pause");
}
分享名稱:copy_constructor復制構造函數(shù)1
當前URL:http://www.rwnh.cn/article0/jdgpoo.html
成都網(wǎng)站建設公司_創(chuàng)新互聯(lián),為您提供企業(yè)網(wǎng)站制作、品牌網(wǎng)站制作、全網(wǎng)營銷推廣、營銷型網(wǎng)站建設、App設計、云服務器
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉載內(nèi)容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉載,或轉載時需注明來源: 創(chuàng)新互聯(lián)