[C /C++]メンバーアクセス演算子の違い

メンバーアクセス演算子の違い:

1.ドット演算子:

2.矢印演算子

同じ点:どちらもデータメンバーにアクセスできます。



違い:

ドット演算子:インスタンス化されたオブジェクトのデータメンバーにアクセスします。

矢印演算子:インスタンス化されたオブジェクトポインタが指すオブジェクトのデータメンバーにアクセスします。

コード例:

#include<iostream>
using namespace std;
class A{
    public:
    //设置内部接口
    void setX(int n){
        x=n;
    }
    int showX(){
        return x;
    }
    private:
    int x;
};
int main()
{
    A a;
    a.setX(3);
    cout<<a.showX()<<endl;

    A *ptr;
    ptr=&a;
    ptr->setX(4);
    cout<<ptr->showX()<<endl;
    return 0;

    (*ptr).setX(5);
    cout<<(*ptr).showX();
}

//其中ptr->setX==(*ptr).setX

おすすめ

転載: blog.csdn.net/zhangxia_/article/details/121381463