取消引用的指针不能用作它指向的对象?

伯恩哈特

我问这是因为尝试编译时出现编译错误:

*string3.find('h');

我得到的错误是

error: request for member 'find' in 'string3', which is of pointer type 'std::string* {aka std::basic_string<char>*}' (maybe you meant to use '->' ?)

我认为这会起作用,因为* string3是一个字符串,并且*运算符取消了对指针的引用,因此我正在使用实际的字符串。通常,类函数在C ++中不能以这种方式工作吗?

注意:我知道我可能不需要指针。这只是我的教授针对此摘要所来自的作业的规范之一。

马克·A

您应该看一下C ++运算符的优先级

std::string string2 = "hello";
std::string* string3 = &string2;
(*string3).find('h');

之所以需要额外的一对括号,是因为“按引用选择元素”(即您的.角色)比“间接(取消引用) ”(即您的*角色)具有更高的优先级

就像您的编译器提示的那样,这也可能起作用:

string3->find('h');

作为一个小的调试帮助:您收到的错误消息准确说明了解决问题所需的知识

错误:请求成员'find'在'string3'中,其指针类型为'std :: string * [...]

即“您在指针对象上请求成员'查找',我应该怎么解释呢?这对我来说似乎不正确

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

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

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

为什么不能取消引用对象的指针?

来自分类Dev

当我循环它时,猫鼬查找结果不能用作对象

来自分类Dev

“不能移出取消引用的`&`指针”

来自分类Dev

“不能移出取消引用的`&`指针”

来自分类Dev

取消引用指向不再存在的框架的指针

来自分类Dev

取消引用指向不再存在的框架的指针

来自分类Dev

C ++指针与取消引用的对象

来自分类Dev

Rust不能移出取消引用指针

来自分类Dev

为什么我不能引用指向实例化对象函数的指针?

来自分类Dev

指向int数组的指针提供与取消引用时相同的地址

来自分类Dev

取消引用指向numpy数组或列表的void指针

来自分类Dev

取消引用指向numpy数组或列表的void指针

来自分类Dev

如何在 C 中取消引用指向 struct 的指针?

来自分类Dev

变量不能用作命令

来自分类Dev

@Binding不能用作属性

来自分类Dev

'gettimeofday'不能用作函数

来自分类Dev

不能用作功能

来自分类Dev

为什么以下各项具有相同的值:指向数组的指针,指向数组的取消引用的指针?

来自分类Dev

'propertyName'不能用作实体类型'typeName'的属性,因为它已配置为导航

来自分类Dev

字符串追加,不能移出对“&”指针的取消引用

来自分类Dev

警告X3550:数组引用不能用作左值

来自分类Dev

Typescript:作为对象键的并集的类型不能用作该对象的键

来自分类Dev

指针和引用作为const对象的成员变量

来自分类Dev

取消引用C中不完整类型的指针(指向struct的指针)

来自分类Dev

取消引用指向另一个指针的空指针

来自分类Dev

使用预增量运算符指向指针取消引用的指针

来自分类Dev

取消引用指向结构内指针的指针时出现段错误

来自分类Dev

指向引用的指针 getter

来自分类Dev

为什么删除引用指向它的对象后仍然存在?

Related 相关文章

  1. 1

    为什么不能取消引用对象的指针?

  2. 2

    当我循环它时,猫鼬查找结果不能用作对象

  3. 3

    “不能移出取消引用的`&`指针”

  4. 4

    “不能移出取消引用的`&`指针”

  5. 5

    取消引用指向不再存在的框架的指针

  6. 6

    取消引用指向不再存在的框架的指针

  7. 7

    C ++指针与取消引用的对象

  8. 8

    Rust不能移出取消引用指针

  9. 9

    为什么我不能引用指向实例化对象函数的指针?

  10. 10

    指向int数组的指针提供与取消引用时相同的地址

  11. 11

    取消引用指向numpy数组或列表的void指针

  12. 12

    取消引用指向numpy数组或列表的void指针

  13. 13

    如何在 C 中取消引用指向 struct 的指针?

  14. 14

    变量不能用作命令

  15. 15

    @Binding不能用作属性

  16. 16

    'gettimeofday'不能用作函数

  17. 17

    不能用作功能

  18. 18

    为什么以下各项具有相同的值:指向数组的指针,指向数组的取消引用的指针?

  19. 19

    'propertyName'不能用作实体类型'typeName'的属性,因为它已配置为导航

  20. 20

    字符串追加,不能移出对“&”指针的取消引用

  21. 21

    警告X3550:数组引用不能用作左值

  22. 22

    Typescript:作为对象键的并集的类型不能用作该对象的键

  23. 23

    指针和引用作为const对象的成员变量

  24. 24

    取消引用C中不完整类型的指针(指向struct的指针)

  25. 25

    取消引用指向另一个指针的空指针

  26. 26

    使用预增量运算符指向指针取消引用的指针

  27. 27

    取消引用指向结构内指针的指针时出现段错误

  28. 28

    指向引用的指针 getter

  29. 29

    为什么删除引用指向它的对象后仍然存在?

热门标签

归档