C++类中的继承实例详解
更新时间:2017年07月03日 14:56:06 投稿:lqh
这篇文章主要介绍了C++类中的继承实例详解的相关资料,需要的朋友可以参考下
C++类中的继承实例详解
实例效果:

实现代码:
#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++ 中"emplace_back" 与 "push_back" 的区别
这篇文章主要介绍了C++ 中"emplace_back" 与 "push_back" 的区别的相关资料,需要的朋友可以参考下2017-04-04
简单掌握C++编程中的while与do-while循环语句使用
这篇文章主要介绍了C++编程中的while与do-while循环语句使用,区别就是while是先判断再执行,而do-while是先执行再判断,需要的朋友可以参考下2016-01-01


最新评论