在为const时返回指向自身的指针的类函数。C ++

回声3

这是我尝试过的:

game* Reversi::clone() const{
    Reversi* ptr = this;
    return ptr;
}

但是我收到以下错误:

error: invalid conversion from ‘const Reversi*’ to ‘Reversi*’ [-fpermissive]
Reversi* ptr = this;

提前致谢。

songyuanyao

的类型的thisconst Reversi*内部const的成员函数。您可以使用非const成员函数,

game* Reversi::clone() {
    Reversi* ptr = this;
    return ptr;
}

或将的类型更改ptrconst Reversi*

const game* Reversi::clone() const {
    const Reversi* ptr = this;
    return ptr;
}

顺便说一句:您的代码只是复制了指针this,根本没有复制内容。这意味着返回的指针将仅指向同一对象。你可能想要,

game* Reversi::clone() const {
    Reversi* ptr = new Reversi(*this); // use copy ctor here
    return ptr;
}

请注意,从this成员函数进行复制时可能是const这似乎更合理,因为克隆方法通常不应更改原始对象的状态。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

在C语言中,函数是否可能返回指向自身的指针?

来自分类Dev

使用const指针指向函数中的类

来自分类Dev

返回指向类成员函数的指针

来自分类Dev

C:指向返回枚举的函数的函数指针

来自分类Dev

当给定`const char *`作为第一个参数时,C标准库函数`strchr`如何返回指向非const的指针?

来自分类Dev

从C ++类返回指向向量的指针

来自分类Dev

从const成员函数返回类成员的指针

来自分类Dev

C ++如何使函数指针指向类方法

来自分类Dev

指向类成员的 C++ 函数指针

来自分类Dev

C函数返回指向结构的指针

来自分类Dev

从C ++中的函数返回指向数组的指针?

来自分类Dev

c ++从函数返回指向结构的指针

来自分类Dev

从C ++中的函数返回指向数组的指针?

来自分类Dev

返回类函数指针c ++

来自分类Dev

如何从静态函数返回指向const的指针?

来自分类Dev

C const 指向 const struct 数组的指针作为函数参数

来自分类Dev

C ++指向const指针的const数组的指针

来自分类Dev

指向函数的指针,返回函数指针

来自分类Dev

指向函数的指针,返回函数指针

来自分类Dev

指向类方法的函数指针

来自分类Dev

创建指向类的指针的函数

来自分类Dev

指向类的成员函数的指针

来自分类Dev

指向类成员函数的指针

来自分类Dev

指向函数的函数指针,返回指向所述函数类型的指针

来自分类Dev

C从函数返回const char指针或char指针

来自分类Dev

当在C ++中获得指向基类的指针时,为什么不为派生类对象调用重载函数?

来自分类Dev

在C ++继承中,当指向基类的指针对象指向派生类时,不调用派生类析构函数

来自分类Dev

C ++-使指向超类的指针与函数中的子类参数匹配

来自分类Dev

指向类的指针的C ++函数不起作用?

Related 相关文章

  1. 1

    在C语言中,函数是否可能返回指向自身的指针?

  2. 2

    使用const指针指向函数中的类

  3. 3

    返回指向类成员函数的指针

  4. 4

    C:指向返回枚举的函数的函数指针

  5. 5

    当给定`const char *`作为第一个参数时,C标准库函数`strchr`如何返回指向非const的指针?

  6. 6

    从C ++类返回指向向量的指针

  7. 7

    从const成员函数返回类成员的指针

  8. 8

    C ++如何使函数指针指向类方法

  9. 9

    指向类成员的 C++ 函数指针

  10. 10

    C函数返回指向结构的指针

  11. 11

    从C ++中的函数返回指向数组的指针?

  12. 12

    c ++从函数返回指向结构的指针

  13. 13

    从C ++中的函数返回指向数组的指针?

  14. 14

    返回类函数指针c ++

  15. 15

    如何从静态函数返回指向const的指针?

  16. 16

    C const 指向 const struct 数组的指针作为函数参数

  17. 17

    C ++指向const指针的const数组的指针

  18. 18

    指向函数的指针,返回函数指针

  19. 19

    指向函数的指针,返回函数指针

  20. 20

    指向类方法的函数指针

  21. 21

    创建指向类的指针的函数

  22. 22

    指向类的成员函数的指针

  23. 23

    指向类成员函数的指针

  24. 24

    指向函数的函数指针,返回指向所述函数类型的指针

  25. 25

    C从函数返回const char指针或char指针

  26. 26

    当在C ++中获得指向基类的指针时,为什么不为派生类对象调用重载函数?

  27. 27

    在C ++继承中,当指向基类的指针对象指向派生类时,不调用派生类析构函数

  28. 28

    C ++-使指向超类的指针与函数中的子类参数匹配

  29. 29

    指向类的指针的C ++函数不起作用?

热门标签

归档