在 C++ 中,this 指针和传值传参是两个完全不同的概念,它们各自在 C++ 的面向对象编程和函数参数传递中扮演着不同的角色。
this 指针this 指针是一个特殊的指针,它指向调用成员函数的对象本身。在类的非静态成员函数中,this 指针是隐式可用的。通过 this 指针,成员函数可以访问对象的成员变量和调用其他成员函数。
this 指针的主要作用是:
区分成员变量和局部变量:当成员变量和函数参数或局部变量同名时,可以使用 this-> 来明确指定访问的是成员变量。
返回当前对象的引用或指针:在需要返回当前对象本身的情况下,可以使用 *this 或 this。
实现链式调用:某些情况下,返回 *this 可以使得成员函数支持链式调用。
传值传参传值传参是函数参数传递的一种方式。当使用传值传参时,函数接收的是实际参数的一个副本,对副本的修改不会影响原始数据。
传值传参的主要特点是:
参数传递的是副本:函数内部对参数的操作不会影响到原始数据。
效率可能较低:对于大型对象,复制对象可能会消耗较多的时间和内存。
简单直观:传值传参的方式简单直观,易于理解。