using namespace std;
class Student
{
public:
Student(){}
Student(string _name):m_strName(_name){}
Student(const Student& stu){}
~Student(){}
void setName(string _name){m_strName = _name;}
string getName(){cout << m_strName << endl; }
private:
string m_strName;
};
class Student
{
public:
Student(){}
Student(string _name):m_strName(_name){}
Student(const Student& stu){}
~Student(){}
void setName(string _name){m_strName = _name;}
string getName(){cout << m_strName << endl; }
private:
string m_strName;
};
最新回答 / tangl666
#include<iostream>#include<string.h>using namespace std;class Gun{?? ?public:?? ??? ?string type;?? ??? ?int ATK;?? ??? ?int GunCapacity;?? ??? ?int NowCapacity;?? ???? int?? ?Surplus;?? ? // or residue};int main(void){?? ?Gun *p = new Gun();?...
2019-09-27
老師沒說如何拷貝對象,只說拷貝構造函數在哪些情況下會被調用。
Teacher t3(t1),將t1拷貝給t3,有如下兩種方法:
1.在拷貝構造函數定義時在函數內部進行賦值:
Teacher (const Teacher & tea)
{
m_strName =tea.m_strName;
}
2.運用拷貝構造函數的初始化列表:
Teacher(const Teacher &tea) : m_strName(tea.m_strName), m_age(tea.m_age) {}
可以看到,拷貝構造函數只是構造函數的一種特殊類型而已,他滿足構造函數的性質:可在內部賦值也可進行初始化列表操作。
Teacher t3(t1),將t1拷貝給t3,有如下兩種方法:
1.在拷貝構造函數定義時在函數內部進行賦值:
Teacher (const Teacher & tea)
{
m_strName =tea.m_strName;
}
2.運用拷貝構造函數的初始化列表:
Teacher(const Teacher &tea) : m_strName(tea.m_strName), m_age(tea.m_age) {}
可以看到,拷貝構造函數只是構造函數的一種特殊類型而已,他滿足構造函數的性質:可在內部賦值也可進行初始化列表操作。
2019-09-16
最新回答 / weixin_慕絲3553261
這兩個函數,只是在創建對象時 自動調用的,里面的內容,你可以自己定義,但是,無論里面有沒有內容,它都會在對象被創建時自動調用。有內容,他就在對象被創建時去執行。
2019-09-15
最贊回答 / int程序小白
析構函數里delete釋放的對象需要是類的數據成員,而且需要在構造函數或者在其他調用過的函數里面為他開辟了空間,才能在析構函數內使用delete釋放
2019-08-12