21xrx.com
2024-11-08 22:24:17 Friday
登录
文章检索 我的文章 写文章
C++ 中点和箭头的区别
2023-07-12 16:58:06 深夜i     --     --
C++ 箭头 区别

在C++ 中,点和箭头两个符号经常用来访问结构体、类对象的成员,但它们之间还是存在一些微小的区别。

点操作符

使用点操作符(.),可以用来访问结构体或者类对象的成员。如果一个变量是结构体类型或者一个实例对象,则可以使用点操作符来访问成员变量和成员函数,例如:


struct Point

  int x;

  int y;

;

Point p = 2;

cout << p.x << endl; // 输出1

在上面的代码中,使用点操作符来访问结构体 `p` 的 `x` 成员时,不需要使用任何符号,只需要使用 `.` 就可以完成访问。

箭头操作符

对于一个指向结构体或类的指针,则可以使用箭头指向操作符 `->` 来进行成员访问。箭头操作符需要将指向结构体或类的指针的地址加上所需的成员偏移量,然后进行访问,例如:


struct Point

  int x;

  int y;

;

Point *p = new Point1; // 使用new创建一个Point对象

cout << p->x << endl; // 输出1

delete p; // 释放内存

在上面的代码中,`p` 指向一个 Point 对象的地址,使用箭头操作符来访问 `p` 的 `x` 成员时,需要使用 `->` 符号,类似于 `p->x` 的形式。

总结

在 C++ 中,点和箭头操作符都是用来访问结构体或类的成员,但它们之间的区别在于,点操作符用于直接操作一个结构体或类的对象,而箭头操作符则是用于访问指向结构体或类的指针对象所指向的对象中的成员。因此,在使用这两个操作符时,需要根据具体的情况来选择使用哪个符号。

  
  

评论区

{{item['qq_nickname']}}
()
回复
回复