zoukankan      html  css  js  c++  java
  • c++中 . 和 -> 的区别是什么

    c++中 . 和 -> 的区别是什么

    一、总结

    一句话总结:

    ->主要用于类类型的指针访知问类的成员,.(点)运算符主要用于类类型的对象访问类的成员,或者结构体访问成员。
    class A
    {public :int a}
    A ma;
    A *p=&ma;
    那么指针p应使用->来访版问成员a,比如p->a,而ma应使用.来访问,比如ma.a区别就在这里,凡是指针就权使用->,对象就使用.运算符。

    二、c++中 . 和 -> 的区别是什么

    转自或参考:c++中 . 和 -> 的区别是什么?_百度知道
    https://zhidao.baidu.com/question/143290358.html

    1、回答一

    ->主要用于类类型的指针访知问类的成员,.(点)运算符主要用于类类型的对象访问类的成员,或者结构体访问成员。
    举例
    class A
    {public :int a}
    A ma;
    A *p=&ma;
    那么指针p应使用->来访版问成员a,比如p->a,而ma应使用.来访问,比如ma.a区别就在这里,凡是指针就权使用->,对象就使用.运算符。

     

    2、回答2

    c++中 . 和 -> 主要是用法上的不同。

    1、A.B则A为对象或者结构体;

    2、A->B则A为指针,->是成员百提取,A->B是提取A中的成员B,A只能是指向类、结构、联合的指针;

    例如:

    class student

    {

    public:       

    string name[20];

    }

    第一种情况,采用指针访问 student *xy,则访问时需要写成 *xy.name="hhhhh";等价于xy->name="hhhhh"。

    第二种情况,采用普通成员访问 student xy,则访问时需要写成 xy.name="hhhhh"。

     
  • 相关阅读:
    linux sqlite replace into
    编译原理
    什么是协程
    从源码解析Nginx对 Native aio支持_运维_youbingchen的博客-CSDN博客 https://blog.csdn.net/youbingchen/article/details/51767587
    SSL_ERROR_WANT_READ
    阻塞事务提交
    nysql 定时器
    __init__ raises an exception, then __del__ will still be called
    int ping = 11; 限流 客户端验证与服务端是连接的
    四元组一样
  • 原文地址:https://www.cnblogs.com/Renyi-Fan/p/12961980.html
Copyright © 2011-2022 走看看