C++ 笔记5 this指针 析构函数 拷贝构造和拷贝赋值_函数返回对象调用拷贝构造函数的this指针在哪(3)

收集整理了一份《2024年最新物联网嵌入式全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升的朋友。
img
img

如果你需要这些资料,可以戳这里获取

需要这些体系化资料的朋友,可以加我V获取:vip1024c (备注嵌入式)

一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人

都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!

cout << this->m_name << “,” <<
this->m_age << endl;
}*/
private:
string m_name;
int m_age;
};
int main(void){

Teacher t1("游成伟",35);
Teacher t2("闵卫",45);
t1.print();//Teacher::print(&t1)
t2.print();//Teacher::print(&t2)

cout << "&t1:" << &t1 << endl;
cout << "&t2:" << &t2 << endl;

return 0;

}


3)大多数情况,可以忽略this直接访问类中的成员,但是在以下几个特殊场景必须要显式使用this指针:  
 –》区分作用域  
 –》从成员函数返回调用对象自身(返回自引用)//重点掌握  
 –》从类的内部销毁对象自身(对象自销毁) //了解  
 –》作为成员函数实参,实现对象之间交互 //了解



#include
using namespace std;
class Counter{

public:
Counter(int count = 0):m_count(count){
}
//Counter& add(Counter* this)
Counter& add(void){

    ++m_count;
    //this指向成员函数的调用对象
    //\*this就是调用对象自身
    return \*this;//返回自引用
}
void destroy(void){

    cout << "this:" << this << endl;
    delete this;//对象自销毁
}
int m_count;

};
int main(void){

Counter c;
//Counter::add(&c)
c.add().add().add();
cout << c.m_count << endl;//3

Counter\* pc = new Counter;
pc->add();
cout << pc->m_count << endl;//1
//delete pc;
cout << "pc:" << pc << endl;
pc->destroy();

return 0;

}


### 2 常成员函数(常函数)


1)在一个成员函数参数表后面加上const,这个成员函数就是常成员函数。  
 返回类型 函数名(参数表) const {函数体}  
 2)常成员函数中的this指针是一个常量指针,不能在常成员函数中修改成员变量的值。  
 3)被mutable关键字修饰的成员变量,可以在常成员函数中被修改。




**收集整理了一份《2024年最新物联网嵌入式全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升的朋友。**
![img](https://img-blog.csdnimg.cn/img_convert/9722f5bce3df6ac3950dfbbfd1ea407b.png)
![img](https://img-blog.csdnimg.cn/img_convert/706ae0fb9ff057667282ee813e23ac3b.png)

**[如果你需要这些资料,可以戳这里获取](https://bbs.csdn.net/topics/618679757)**

**需要这些体系化资料的朋友,可以加我V获取:vip1024c (备注嵌入式)**

**一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人**

**都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!**

*一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人**

**都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!**

  • 4
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值