【问题标题】:What does the this pointer mean? [duplicate]这个指针是什么意思? [复制]
【发布时间】:2014-06-25 10:21:49
【问题描述】:

我是新手,我正在尝试理解this 指针;谁能告诉我 C++ 中的“this指针”指向什么?

到类的基地址?

structunion 中的this 指针与类中的含义相同吗?

【问题讨论】:

    标签: c++ pointers


    【解决方案1】:

    'this' 通常指调用类、联合、结构或函数的特定方法的对象实例。

    如果不同变量的名称相同,则使用“this”来区分它们。

    class stu
    {
    int roll_no;
    string name;
    
    public:
    void input(int roll_no,string name)
    {
    name=this->name;
    roll_no=this->roll_no;
    }
    
    
    }
    
    stu obj=new stu();
    obj.input("47","harry");
    

    这里,“this”表示“name”属于调用该方法的“obj”。因此“this”指定了属于类对象的变量的实例。 还请记住,当您想获得理论问题的答案时,请先尝试在 Google 上搜索它们。 希望这可以帮助。

    【讨论】:

      【解决方案2】:

      除了结构的默认成员默认为公共之外,结构和类在 c++ 中是相同的。

      联合没有 this 指针。

      认为 this 指针的最简单方法是指向您正在为其编写代码的类的内部指针。

      在类之外(指向名为 b 的对象的指针)

      b->c();
      

      类内:

      this->c();
      

      【讨论】:

        猜你喜欢
        • 2012-05-09
        • 1970-01-01
        • 1970-01-01
        • 2015-03-12
        • 1970-01-01
        • 2015-04-30
        相关资源
        最近更新 更多