就是在C里面结构体仿造类的用法(个人理解)
比如在C++里面,用类来实现的一个函数给对象赋值,可以这么做
Class A{
Publice :
int a;
void seta(b){
a=b;
}
}
int main(){
A c;
c.seta(123);
return 0;
}
在C语言里面,没有class关键字,和类相似的就是结构体,在C语言里面,可以这样子实现
struck A{
int a;
}
void seta(struck A *this,int b){
this->a=b;
}
int main(){
struck A c;
seta(&c,123);
return 0;
}
this 指针的作用就是指向成员函数所作用的对象,所以非静态成员函数中可以直接使用 this 来代表指向该函数作用的对象的指针。
class A{
Public:
int a;
void seta(int b){
this->a =b;
}
}
A geta(){
return *this;
}
int main(){
A x;
A y;
x.seta(123);
y=x.geta();
return 0;
}
实际上每个成员函数的第一个参数默认都有个指向对象的 this 指针,如果该指向的对象是空,相当于成员函数的第一个参数是NULL,那么只要成员函数没有使用到成员变量,也是可以正常执行。
PS:静态成员函数是不能使用 this 指针,因为静态成员函数相当于是共享的变量,不属于某个对象的变量。
下面是实际开发情况:
这个LPMappoint是个map
其实返回的是这个map测点
不知道有没有讲错,小蔡同学有点菜。但是就是想记录一下,加深印象。



