首页 > 编程语言 >c++ 箭头运算符

c++ 箭头运算符

时间:2023-08-04 10:44:13浏览次数:47  
标签:char age c++ 运算符 箭头 func 成员

C++中箭头运算符的含义与用法讲解_C 语言_脚本之家 (jb51.net)

C++中箭头运算符->,相当于把解引用和成员访问符两个操作符结合在一起,换句话说,

p->func()(*p).func()所表示的意思一样。

例如:

1 2 3 4 5 class A { public: func(); }
1 2 3 4 5 6 class B {  A *p = new A(); *p.a(); //或者使用p->a,二者等价,且更加简洁 }

理解就是,->的功能就是提供了一种对象指针更方便的访问对象成员的方法。

运算符 -> 是指向结构体成员运算符,结合方向为自左向右。

举例说明如下:

1 2 3 4 5 6 7 8 9 10 11 12 13 14 #include<stdio.h> // 结构体的声明与定义 struct {   char name[10];   int age;   char sex; }person; void main() {   int i;   // 此处就是指向结构体成员运算符(->)的用法   i = person->age; // 提取结构体成员变量age的值,并赋值给变量i }
 

 

标签:char,age,c++,运算符,箭头,func,成员
From: https://www.cnblogs.com/yibeimingyue/p/17605278.html

相关文章

  • c++数组作为函数参数
    intsum_arr(intarr[],intn){ inttotal=0; for(inti=0;i<n;i++){ total=total+arr[i]; } returntotal;}方括号指出arr是一个数组,而方括号为空则表明,可以将任何长度的数组传递给该函数,n代表数组的长度。实际数组名就是指针,解释为其第一个元素的地址。int......
  • ES6箭头函数,{...object1, ...object2}使用解构赋值《...》提示错误的解决办法
    原因分析解构赋值大括号{}与原箭头函数的大括号冲突,导致无法正常解析解决办法错误示例()=>{...object1,...object2}正确示例()=>({...object1,...object2})//即将解构赋值的内容用括号括起来......
  • C++11
    1.VariadicTemplate可以传入任意数量的参数,并且参数的类型不定。voidprintX(){}template<typenameT,typename...Types>voidprintX(constT&firstArg,constTypes&...args){cout<<firstArg<<endl;printX(args...);}其中,...是pack包,用于模板参数中(typenam......
  • C++面试八股文:如何实现一个strncpy函数?
    C++面试八股文:如何实现一个strncpy函数?某日二师兄参加XXX科技公司的C++工程师开发岗位第31面:面试官:strcpy函数使用过吧?二师兄:用过。面试官:这个函数有什么作用?二师兄:主要用做字符串复制,将于字符从一个位置复制到另一个位置。面试官:strncpy函数也使用过吧,和strcpy有......
  • C++入门到放弃(08)——类成员:const 和 static用法
    ​1.常量成员const类的常量成员,具备以下特性:1.1.const成员必须被初始化1.2.const成员只能在初始化列表中赋值1.3.const成员不能在构造函数原型中赋值1.4.const成员初始化之后无法更改classConstMember{public:ConstMember(intnum=0):m_num(num)......
  • 设计模式 C++
    参考博客:https://blog.csdn.net/weixin_45712636/article/details/124328504参考视频:https://www.bilibili.com/video/BV1Np4y1z7BU?p=1&vd_source=fce372ba0aa0bf9ed76094e3192b7015参考文档:https://bright-boy.gitee.io/technical-notes/#/%E8%AE%BE%E8%AE%A1%E6%A8%A1%E5%BC%......
  • C++职工管理系统项目实战
    职工管理系统1.管理系统需求职工管理系统可以用来管理公司内所有员工的信息,利用C++来实现一个基于多态的职工管理系统公司中职工分为三类:普通员工、经理、老板,显示信息时,需要显示职工编号、职工姓名、职工岗位、以及职责普通员工职责:完成经理交给的任务经理职责:完成老板......
  • 125.C++中的size_t
    125.C++中的size_t1.size_t●size_t是一些C/C++标准在stddef.h中定义的,size_t类型表示C中任何对象所能达到的最大长度,它是无符号整数●它是为了方便系统之间的移植而定义的,不同的系统上,定义size_t可能不一样。size_t在32位系统上定义为unsignedint,也就是32位无符号整型。在64......
  • C++ STL
    1.初始头文件c++标准库不包括.h,#include;c旧库需要包括.h,#include<stdio.h>;c新库在旧库前面加c,不需要包含.h,#include。旧头文件不被封装在std命名空间中。网站资源www.cplusplus.comcppreference.comgcc.gnu.org书籍2.STL体系结构部件六大部件:容器、分配器、......
  • C++ | extern "C" 的用法
    extern"C"是C++中的一种用法(无法在C语言中使用),其作用是修饰一段代码,将其用C语言的方式进行编译。那么,使用C语言方式进行编译与使用C++方式进行编译又有什么区别呢?在C++中,支持函数重载:voidfunc();voidfunc(inta,intb);voidfunc(doublea,floatb);但在C语言中如果......