C/C++中有关“ . ”、“ -> “、“ :”、“ :: ”的作用区分(未完成待续)

​ “ . ”、“ -> "、“ :”、“ :: ”这四个符号在写程序的时候经常使用到,然而需要尤其注意的是前两个符号,在一些编译器(譬如VS2019)中,有时候混用这两个符号,编译器也会智能修改为正确的格式;这实在是便利却不利于我们掌握它正确用法的一件事,所以在这里简述一下这些符号的用法与区别。

” . “ 和 ” ->"

这两位是易混大头了,尤其是在有指针出现的时候,它们的共同点是:

两者都是二元操作符,为 变量 . 成员变量->成员 (其中成员可以是变量或函数)

而他们的区别在于:

1、A.B 的A是一个结构体对象,“ . ”将取该变量的成员值B

2、A->B的左边变量是一个指针,“ -> " 将取该指针指向的变量的成员值B;注:这里A只能是指向类、结构、联合的指针

e.g.

    int   a;//定义一个对象;

​   int   *b;//定义类型指针;

​   a.Info();//调用成员函数;

​   b->Info();//调用函数;

“ :” 和 “::”

后面两个符号则容易些,这里的知识也和 JAVA 相关(笔者暂时没学JAVA,学到再来补充):
1、“ :”一般用来继承

2、“ ::”是作用域运算符,A::B表作用域中名称B,A可以是名称空间、类、结构;

e.g.

     std::cin;

​    M::f() //表示f()是类M里的成员函数;

​ 又或者声明类A,A中声明成员函数void f(),但没有在类的声明中给出 f() 的定义,则在类外定义f()时,要写成 :

void A::f() //表示f()是类A的成员函数;

​ 再或者表示引用成员函数及变量

e.g.

System::Math::Sqrt();
//相当于
System.Math.Sqrt();
  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值