1. 程式人生 > >物件的賦值和複製

物件的賦值和複製

物件賦值的一般形式為

物件名1=物件名2

物件的賦值程式碼舉例

#include<iostream>
using namespace std;
class box
{
	public:
		box(int=10,int=10,int=10);
		int volume();
	private:
		int height;
		int width;
		int length;
};
box::box(int h,int w,int len)
{
	height=h;
	width=w;
	length=len;
}
int box::volume()
{
	return(height*width*length);
}
int main()
{
	box box1(15,30,25),box2;
	cout<<"the volume of box1 is"<<box1.volume()<<endl;
	box2=box1;
	cout<<"the vloume of box2 is"<<box2.volume()<<endl;
	return 0;
}

物件的複製兩種方法

1 類名 物件2(物件1)

類名 物件名1=物件名2

物件的賦值是對一個已經存在的物件賦值,因此必須先定義被賦值的物件,才能進行賦值,而物件的賦值則是從無到有地建立一個新物件,並使它與一個已有的物件完全相同。

普通建構函式和複製建構函式的區別

(1)在形式上

普通建構函式的宣告  box(int h,ing w,int len)

複製建構函式的宣告  box(box &b)

(2)在建立物件時,實參型別不同。

box box1(12,15,16);實參為整數,呼叫普通建構函式

box box2(box1);  實參是物件名,呼叫複製建構函式

程式待敲