- 相關(guān)推薦
C++類中的繼承實例詳解
類的繼承,是新的類從已有類那里得到已有的特性。或從已有類產(chǎn)生新類的過程就是類的派生。下面是小編分享的C++類中的繼承實例詳解,一起來看一下吧。
實例效果:
實現(xiàn)代碼:
#include<iostream>
#include<string>
using namespace std;
class Person
{
public:
Person(const char* name = "abc")
:_name(name)
{
cout << "Person()" << endl;
}
Person(const Person& pp)
:_name(pp._name)
{
cout << "Person(const Person&)" << endl;
}
Person& operator=(const Person& pp)
{
cout << "Person& operator=(const Person&)" << endl;
if (this != &pp)
{
_name = pp._name;
}
return *this;
}
~Person()
{
cout << "~Person()" << endl;
}
protected:
string _name;
};
class Student :public Person
{
public:
Student(const char* name, int num)
:Person(name)
, _num(num)
{
cout << "Student()" << endl;
}
Student(const Student& A)
:Person(A)
, _num(A._num)
{
cout << "Student(const Student& A)" << endl;
}
Student& operator=(const Student& A)
{
cout << "Student& operator=(const Student& A)" << endl;
if (this != &A)
{
Person::operator=(A);
_num = A._num;
}
return *this;
}
~Student()
{
cout << "~Student()" << endl;
}
private:
int _num;
};
void test()
{
Student a1("peter", 20);
Student a2(a1);
a2 = a1;
}
int main()
{
test();
return 0;
}
【C++類中的繼承實例詳解】相關(guān)文章:
c++快速排序詳解10-18
Java實現(xiàn)多繼承的實例07-18
C++類的轉(zhuǎn)換10-17
C與C++之間相互調(diào)用的實例07-07
Java實現(xiàn)在不同線程中運行的代碼實例詳解06-11
Java內(nèi)部類詳解及實例分析06-25
C語言合并排序及實例代碼詳解11-02
java繼承抽象類07-28
Java中的Spring入門實例09-15