C   中的 this 指针详解

不要慌嗷!小编来给大家解释一下 C 中的 this 指针是个什么鬼。

首先,this 指针是在 C++ 中使用的,而不是 C 中哦。不过别担心,小编还是会给大家介绍一下,以免引起更深一层的困惑。

在 C++ 中,this 指针是一个隐藏的指针,它指向当前对象的地址。也就是说,它指向调用该成员函数的对象的地址。这个 this 指针在类的成员函数中是自动创建的,不需要用户手动声明或者初始化。

可能有人会问,为什么要有 this 指针呢?其实,它的作用可真不少。

首先,this 指针解决了成员变量和局部变量同名的问题。当成员函数中有和成员变量同名的局部变量时,编译器不知道要访问哪个变量。但是有了 this 指针,就能明确指出是成员变量。比如:

```cpp

class Animal {

private:

int age;

public:

void setAge(int age) {

this->age = age; // 使用 this 指针明确访问成员变量

}

};

```

小编还得再补充一点,this 指针只能在成员函数的内部使用哦,如果在全局函数中使用 this 指针,编译器可不会让你过关的。

其次,this 指针还可以在一个对象中调用其他成员函数。这个功能很强大,可以让不同的成员函数相互调用,以实现更复杂的功能。比如:

```cpp

class Calculator {

private:

int num1;

int num2;

public:

void setNum(int num1, int num2) {

this->num1 = num1;

this->num2 = num2;

}

int add() {

return this->num1 + this->num2;

}

int multiply() {

return this->num1 * this->num2;

}

int getResult() {

int sum = add();

int product = multiply();

return sum + product;

}

};

```

这样我们在调用 getResult() 函数时,就会自动调用 add() 函数和 multiply() 函数,非常方便实用。

不过这里得提醒一下,this 指针只能在非静态成员函数中使用。因为静态成员函数属于整个类,没有与具体对象相关联,所以无法使用 this 指针。

总结一下,this 指针在 C++ 中是一个非常重要的概念,它解决了成员变量和局部变量同名的问题,还可以在对象内部调用其他成员函数。使用 this 指针可以让我们的代码更加准确、易读且灵活实用。

好啦,小编已经给大家解释了 C++ 中的 this 指针是个什么鬼!希望大家能够理解并掌握这个概念。不要着急,多多实践和使用就能更好地掌握它啦!加油,小伙伴们! www.0574web.net 宁波海美seo网络优化公司 是网页设计制作,网站优化,企业关键词排名,网络营销知识和开发爱好者的一站式目的地,提供丰富的信息、资源和工具来帮助用户创建令人惊叹的实用网站。 该平台致力于提供实用、相关和最新的内容,这使其成为初学者和经验丰富的专业人士的宝贵资源。

点赞(28) 打赏

声明本文内容来自网络,若涉及侵权,请联系我们删除! 投稿需知:请以word形式发送至邮箱18067275213@163.com

评论列表 共有 2 条评论

codyness 11月前 回复TA

是啊,不过作为军官的我,可不愿听到“是人民在养你们,你们自己看着办”我们付出了很多——————————————————————————————————这种话好意思说?你去当兵当军官做什么的?穿那身皮?好意思说付出?还好是和平年代呢。纳税人养兵的目的是什么?连这个都没懂也当军官?写给“牛”的几句话: 军人的首要职责是保卫国家领土完整和安全.若有外强来袭、外敌入侵,视国家利益高于一切、视荣誉重于生命的军人,自当以“青山埋忠骨、马革裹尸还”豪迈气概和”牺牲我一个,幸福亿万人”奉献精神,英勇杀敌,含笑疆场。近几十年的和平发展环境,正是广大解放军指战员靠生命和鲜血换来的。这才是军人的真正价值所在。 中国军人来自于人民,服务于人民,这是我军的根本宗旨。“灾情就是命令,时间就是生命 ”,历数建国以来我国遭受的重大灾难和重大危险时刻,解放军上至将军、下至士兵,哪一次不是冲在最前面,哪一次不是把生的希望留给百姓,把死的危险自己承担,这一点,解放军将士从来不讲半点价钱、没有半点含糊,从来没有看着“看着办”过。好在这一点,全国老百姓都铭记在心。“哪里有困难,哪里就有解放军”、“解放军来了,我们就有救了!”、“感谢亲人解放军”,绝不是空洞文字,而是党和人民给予子弟兵的最高葆奖。 外国军队也是人民养的,换句话说是用纳税人的钱养的。但找遍世界各国的军队,也只有中国的军队–解放军,是全心全意为人民服务的军队,是始终把人民的利益高高举过头顶的军队。 政府人员都是人民养的,上至高官,下至普通公务员,无一不是纳税人的钱供养的。也许你这头“牛”,也是人民养的。试问在危险关头,你做了什么?你是怎么“看着办”的?看看你是“怎么办”的? 凡事都要根据现实条件讲究科学方法,抢险救灾也要这样,仅靠激情和蛮干是不可取的。危难时刻,泰山压顶不弯腰的气概是要有的,但糜鹿兴于左而目不瞬的镇定也是必须的,而且是更关键的。 不知道上述的这些话,是否只对“牛”弹琴!

0008全讯网络 1年前 回复TA

这书应该是本很好的书吧,我也去淘宝上支持下

立即
投稿
发表
评论
返回
顶部