C++指针和引用随记

1.指针和引用类型注记

  • 复杂指针
    1.指向成员函数的指针类型
    类型T ,函数void a(int);
    成员函数指针类型:void (T:: * )(int)
    变量声明:void (T:: * a)(int) = nullptr;
    因为a的类型本质上是一个指针,所以得先解引用,然后用对象调用,
A b{};
(b.*a)();
  • 数组的指针
    int (*a)[3];
  • 数组的引用
    int (&a)[3];
  • 引用的注意点
    引用不是对象,无法创建指向引用的指针,引用的数组,引用的引用;另外,引用本身的限定符是被忽略的,例如:
    int & const a;中,const忽略,typedef和模板实参引入的cv限定符也是被忽略。

2.总结

查看一个复杂的类型主要看变量的类型主要看变量右侧是*(指针)还是&(引用);例如:
int (*a)[3];a是指针,指向数组;
int (&a)[2];a是引用,绑定一个数组;
void (*a)(void):a是指针,指向函数;
void (&a)(void);a是引用,绑定函数;

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值