初始化列表操作const也沒啥用啊,第一次實例化const定義的值就固定了,再次實例化同一類時,const定義的值永遠(yuǎn)是第一次的
2019-10-27
int main(void)
{
// 通過new方式實例化對象*stu
Student *stu = new Student;
// 更改對象的數(shù)據(jù)成員為“慕課網(wǎng)”
stu->setName("慕課網(wǎng)");
// 打印對象的數(shù)據(jù)成員
stu->getName();
return 0;
}
{
// 通過new方式實例化對象*stu
Student *stu = new Student;
// 更改對象的數(shù)據(jù)成員為“慕課網(wǎng)”
stu->setName("慕課網(wǎng)");
// 打印對象的數(shù)據(jù)成員
stu->getName();
return 0;
}
2019-10-14
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;
};
2019-10-14
老師沒說如何拷貝對象,只說拷貝構(gòu)造函數(shù)在哪些情況下會被調(diào)用。
Teacher t3(t1),將t1拷貝給t3,有如下兩種方法:
1.在拷貝構(gòu)造函數(shù)定義時在函數(shù)內(nèi)部進(jìn)行賦值:
Teacher (const Teacher & tea)
{
m_strName =tea.m_strName;
}
2.運(yùn)用拷貝構(gòu)造函數(shù)的初始化列表:
Teacher(const Teacher &tea) : m_strName(tea.m_strName), m_age(tea.m_age) {}
可以看到,拷貝構(gòu)造函數(shù)只是構(gòu)造函數(shù)的一種特殊類型而已,他滿足構(gòu)造函數(shù)的性質(zhì):可在內(nèi)部賦值也可進(jìn)行初始化列表操作。
Teacher t3(t1),將t1拷貝給t3,有如下兩種方法:
1.在拷貝構(gòu)造函數(shù)定義時在函數(shù)內(nèi)部進(jìn)行賦值:
Teacher (const Teacher & tea)
{
m_strName =tea.m_strName;
}
2.運(yùn)用拷貝構(gòu)造函數(shù)的初始化列表:
Teacher(const Teacher &tea) : m_strName(tea.m_strName), m_age(tea.m_age) {}
可以看到,拷貝構(gòu)造函數(shù)只是構(gòu)造函數(shù)的一種特殊類型而已,他滿足構(gòu)造函數(shù)的性質(zhì):可在內(nèi)部賦值也可進(jìn)行初始化列表操作。
2019-09-16