|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
第十六课
this指针(当出现重名时候,this->fishc = fishc ,前一个是指的是类的属性,后一个指的是函数传入的参数)
Class Human
{
char fishc;
Human(char fishc)
{
this->fishc = fishc; (前一个为类的属性,后一个为传入的参数)
}
}
基类和子类
基类: class Animal
{
}
子类 class Pig : public Animal
{
}
第十七课
继承中的析构器和构造器
如果出现Baseclass(int num),子类出现Subclass(int num)
定义为Subclass::Subclass(int num) : Baseclass(num);调用基类的构造器
顺序是先Baseclass->Subclass->~Subclass->~Baseclass;
- #include<iostream>
- #include<string>
- class Baseclass
- {
- public:
- /* Baseclass(std::string name);*/
- Baseclass();
- ~Baseclass();
- void doSomething();
- };
- class Subclass : public Baseclass
- {
- public:
- /* Subclass(std::string name);*/
- Subclass();
- ~Subclass();
- };
- /*Baseclass::Baseclass(std::string name)
- {
- std::cout << "我在基类构造器里被" << name << "亲了一口!\n";
- }*/
- Baseclass::Baseclass()
- {
- std::cout << "父类无参构造器\n";
- }
- Baseclass::~Baseclass()
- {
- //std::cout << "我在基类析构器\n";
- }
- void Baseclass::doSomething()
- {
- std::cout << "我被" << "亲了一口\n";
- }
- /*Subclass::Subclass(std::string name) : Baseclass(name)
- {
- }*/
- Subclass::Subclass()
- {
- std::cout << "无参子类构造器\n";
- }
- Subclass::~Subclass()
- {
- std::cout << "我在子类的析构器里面\n";
- }
- void main()
- {
- Subclass sub;
- sub.doSomething();
- }
复制代码 |
评分
-
查看全部评分
|