C++类的拷贝控制
C++類的拷貝控制
- 什么是類的拷貝控制
- 拷貝構造函數
- 拷貝賦值運算符
- 析構函數
- 定義拷貝控制操作的原則
- 使用=default和=delete
- 移動構造函數和移動賦值運算符
什么是類的拷貝控制
當我們定義一個類的時候,為了讓我們定義的類類型像內置類型(char,int,double等)一樣好用,我們通常需要考下面幾件事:
Q1:用這個類的對象去初始化另一個同類型的對象。
Q2:將這個類的對象賦值給另一個同類型的對象。
Q3:讓這個類的對象有生命周期,比如局部對象在代碼部結束的時候,需要銷毀這個對象。
因此C++就定義了5種拷貝控制操作,其中2個移動操作是C++11標準新加入的特性:
拷貝構造函數(copy constructor)
移動構造函數(move constructor)
拷貝賦值運算符(copy-assignment operator)
移動賦值運算符(move-assignment operator)
析構函數 (destructor)
前兩個構造函數發生在Q1時,
總結
- 上一篇: C++OO思想
- 下一篇: C++继承中的普通函数,纯虚函数、虚函数