当前位置:  开发笔记 > 编程语言 > 正文

错误C2355:'this':只能在非静态成员函数或非静态数据成员初始值设定项中引用

如何解决《错误C2355:'this':只能在非静态成员函数或非静态数据成员初始值设定项中引用》经验,为你挑选了1个好方法。

我在编译代码时遇到了一些问题.它说,

错误C2355:'this':只能在非静态成员函数或非静态数据成员初始值设定项中引用

错误出现的代码的一部分

    double getR() {
    return this->r;
}
double getG() {
    return this->g;
}
double getB2() {
    return this->b2;
}

也在这里

    rez.r = this->r / 2 + a.getR() / 2;
    rez.g = this->g / 2 + a.getG() / 2;
    rez.b2 = this->b2 / 2 + a.getB2() / 2;

有任何想法吗?

这是固定的.

现在代码的这部分错误相同......

    rez.r = this->r / 2 + a.getR() / 2;
    rez.g = this->g / 2 + a.getG() / 2;
    rez.b2 = this->b2 / 2 + a.getB2() / 2;

它还说

错误C2227:' - > r'的左边必须指向class/struct/union/generic类型

CoryKramer.. 9

您需要将类范围添加到方法中,例如,如果您的类已命名,YourClass那么您的函数将是

double YourClass::getR() {
    return this->r;
}

否则getR是免费功能,因此无需this操作.您的其他方法也是如此.



1> CoryKramer..:

您需要将类范围添加到方法中,例如,如果您的类已命名,YourClass那么您的函数将是

double YourClass::getR() {
    return this->r;
}

否则getR是免费功能,因此无需this操作.您的其他方法也是如此.

推荐阅读
围脖上的博博_771
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有