不同文件中的继承类将父类的“this”结果改为未定义。
创始人
2025-01-09 21:00:24
0

在不同文件中的继承类中,无法直接访问父类的成员变量和方法,因此无法直接修改父类的"this"指针。但可以通过一些方法来实现相应的功能。

一种解决方法是使用"virtual"关键字来定义父类的成员函数,并在子类中重新实现该函数。这样在多态的情况下,通过子类对象调用该函数时,会根据实际的对象类型来确定调用哪个版本的函数。代码示例如下:

父类.h文件

class Parent {
public:
    virtual void foo();
};

父类.cpp文件

#include "父类.h"

void Parent::foo() {
    // 父类的实现
}

子类.h文件

#include "父类.h"

class Child : public Parent {
public:
    void foo() override;
};

子类.cpp文件

#include "子类.h"

void Child::foo() {
    // 子类的实现
}

另一种解决方法是通过传递父类的指针或引用来操作父类的成员变量和方法。代码示例如下:

父类.h文件

class Parent {
private:
    int x;
public:
    void setX(int value);
    int getX() const;
};

父类.cpp文件

#include "父类.h"

void Parent::setX(int value) {
    x = value;
}

int Parent::getX() const {
    return x;
}

子类.h文件

#include "父类.h"

class Child : public Parent {
public:
    void updateX();
};

子类.cpp文件

#include "子类.h"

void Child::updateX() {
    int newValue = getX() + 1;
    setX(newValue);
}

在这种方法中,子类通过调用父类的getX()和setX()方法来获取和修改父类的成员变量。

相关内容

热门资讯

关于透视!哈糖大菠萝有挂吗5个... 关于透视!哈糖大菠萝有挂吗5个常用方法,pokemomo辅助软件,项目教程(有挂秘籍)-哔哩哔哩1、...
分享透视!wpk可以作必弊吗,... 分享透视!wpk可以作必弊吗,wepoker破解版内购,指南书教程(果真有挂)-哔哩哔哩1、进入游戏...
详情透视!fishpoker透... 详情透视!fishpoker透视!一直是真的有辅助方法(有挂规律)-哔哩哔哩1、详情透视!fishp...
揭幕透视!wepoker透视脚... 揭幕透视!wepoker透视脚本免费下载,wepoker可以透视码,经验教程(有挂技术)-哔哩哔哩w...
专业透视!佛手大菠萝有挂吗!原... 专业透视!佛手大菠萝有挂吗!原来一直都是有辅助教程(真的有挂)-哔哩哔哩1、打开软件启动之后找到中间...
解迷透视!德州透视插件,wej... 解迷透视!德州透视插件,wejoker私人辅助软件,模板教程(有挂细节)-哔哩哔哩1、wejoker...
详情透视!智星德州插件2024... 详情透视!智星德州插件2024最新版!果然真的是有辅助插件(讲解有挂)-哔哩哔哩1、智星德州插件20...
关于透视!wepoker透视脚... 关于透视!wepoker透视脚本免费使用视频,聚星ai辅助工具激活码,法门教程(有挂总结)-哔哩哔哩...
科普透视!pokemmo手机版... 科普透视!pokemmo手机版脚本免费!一直真的有辅助方法(有挂攻略)-哔哩哔哩;进入游戏-大厅左侧...
解密透视!hhpoker是真的... 解密透视!hhpoker是真的吗,aapoker怎么拿好牌,学习教程(有挂解惑)-哔哩哔哩1、让任何...