【C++】箭头运算符和点运算符的区别

在C++中,箭头运算符 -> 和点运算符 . 都用于访问类(或结构体)的成员,但它们的使用场景和含义有一些区别:

1.箭头运算符 ->

  1. 箭头运算符用于访问一个指向对象的指针所指向的成员。当你有一个指向类(或结构体)对象的指针时,可以使用箭头运算符来访问该对象的成员。
  2. 通常,箭头运算符结合了 解引用操作和点运算符。它将指针解引用,然后再使用点运算符来访问成员。
  3. 示例:
struct Person {
    string name;
    int age;
};

// 创建一个指向Person对象的指针
Person* p = new Person;
p->name = "John";  // 使用箭头运算符访问name成员
p->age = 30;       // 使用箭头运算符访问age成员

2.点运算符 .

  1. 点运算符用于直接访问类(或结构体)对象的成员。当你有一个类(或结构体)的实例时,可以使用点运算符来访问该对象的成员。
  2. 点运算符不能用于指针,只能用于对象本身。
  3. 示例:
struct Person {
    string name;
    int age;
};

// 创建一个Person对象
Person person;
person.name = "Alice";  // 使用点运算符访问name成员
person.age = 25;        // 使用点运算符访问age成员

总结:

  • 箭头运算符 -> 用于访问指针所指向的对象的成员。
  • 点运算符 . 用于直接访问对象本身的成员。
  • 箭头运算符适用于指针,点运算符适用于对象。
  • 1
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值