在C 语言中,并没有 “this” 指针这个概念 然而,在 C++ 语言中,“this” 指针是一个特殊的指针,它在类的成员函数中被隐式使用,以指向调用该成员函数的对象。“this” 指针的主要作用如下: 访问调用对象的成员变量:当成员函数需要访问调用对象的成员变量时,可以通过 “this” 指针来实现。 解决名称冲突:当成员...
1. this指针的用处: 一个对象的this指针并不是对象本身的一部分,不会影响sizeof(对象)的结果。this作用域是在类内部,当在类的非静态成员函数中访问类的非静态成员的时候,编译器会自动将对象本身的地址作为一个隐含参数传递给函数。也就是说,即使你没有写上this指针,编译器在编译的时候也是加上this的,它作为非...
LED_TypeDef _BSP_LED2;//this指针与this数组staticLED_TypeDef* This_Arr[LED_NUM] = {&_BSP_LED1,&_BSP_LED2};staticLED_TypeDef* mthis;//this指向偏移量(因为外面要用,所以名字不要冲突,最好和bsp对象相关)uint8_tthis_ledx = BSP_LED1_OFFSET; //方法定义voidLightUp(){ mthis = This_Arr[...
1.2.2 成员函数间的this指针传递 当一个成员函数内部调用另一个成员函数时,同一个this指针被用于内部的函数调用。也就是说,在同一个对象的上下文中,所有成员函数共享同一个this指针,而这个指针指向的是调用初始成员函数的对象实例。 第二章:this指针的高级应用与优化 在这一章中,我们将深入探讨this指针在 C++ 编...
从这个简单示例中可以看出,在成员函数内部使用this指针可以准确地访问当前对象的成员变量。 二、this指针的意义和重要性 2.1区分同名变量 在某些情况下,类的成员变量和局部变量可能具有相同的名称,此时可以通过使用this指针来准确定位到类成员。这种情况下,this指针起到了一个重要的标识作用。
在C语言中,`this`指针并不存在,因为它是C++中的一个特性1. 结构体:当你需要操作结构体变量时,可以使用指针。这样可以避免复制整个结构体,从而提高效率。```ctypedef str...
首先肯定不能用一个统一的this指针为每个模块共享使用,应当为每个模块独立创建一个私有的this指针,说到私有,也就是每个C文件下的this指针是独立存在的,不受其他文件的this指针所影响。在C语言中,如果你用常规方法创建同名的全局变量,会报重复定义的错误,可以通过添加static关键字来表示此全局变量存放于静态存储区中,...
this是一个指向对象自身的指针。举个例子:class Test{ int i, j;public:void set(int a, int b){ this->i = a;//将调用该函数的对象中的成员i 赋值为a this->j = b;//将调用该函数的对象中的成员j 赋值为b } };int main(){ Test t;t.set(10, 20);//这时set函数中的this就...
在C 语言中,没有类和对象的概念,因此不存在 this 指针。this 指针是 C++ 中的一个关键字,它表示指向当前对象的指针。然而,如果你想在 C 语言中模拟类似于 C++ 类的行为,你可以使用结构体(struct)和函数组合来实现这一目标。在这种情况下,你可以将结构体作为函数的第一个参数传递,以模拟 this 指针的功能。
this指针 一个类当中,有一个很隐蔽的特殊指针,它就是this指针! 为什么说它特殊?因为只要定义一个类,系统就会预定义个名字叫做this名且指向当前对象的指针。虽然我们看不到但却可以使用它。 比如,我们来看一个时钟类的一个成员函数,用来设置时间传值的代码: ...