C++类中的this指针
来源:互联网 发布:男友几把粗的体验知乎 编辑:程序博客网 时间:2024/06/05 23:07
1、类中this指针就是当前对象的地址(类成员函数的默认的第一个隐含参数)
可以在下面的例子中得到结论
#include <iostream>typedef struct student{char num[20];char name[20];int age;}*pstudent;void SetStudent(student* pf, char* num, char* name, int age){strcpy(pf->num, num);strcpy(pf->name, name);pf->age = age;}int main(){student s1;student s2;memset(&s1, 0, sizeof(student));memset(&s2, 0, sizeof(student));SetStudent(&s1, "0000001", "zhangsan", 20);SetStudent(&s2, "0000002", "lisi", 217);return 0;}
#include <iostream>class student{public:void SetStudent(char* num, char* name, int age){strcpy(_num, num);strcpy(_name, name);_age = age;}private:char _num[20];char _name[20];int _age;};int main(){student s1;student s2;s1.SetStudent("0000001", "zhangsan", 20);s2.SetStudent("0000002", "lisi", 21);system("pause");return 0;}
可以看出类成员函数的默认的第一个隐含参数
并且this是const修饰的不可修改其指向
2、this指针不是类的一部分,并且空类的sizeof()的结果为1
#include <iostream>class student{public:void print(){}private:};int main(){student s1;printf("%d\n", sizeof(s1));system("pause");return 0;}
3、this指针可以为空
#include <iostream>using namespace std;class student{public:void print(){cout << this << endl;}private:};int main(){student* pf = NULL;pf->print();system("pause");return 0;}
阅读全文
0 0
- 类中的this指针
- 详解C++中的this指针
- 类继承中的this指针
- C++类中的this指针
- C++ 类中的this指针
- C++类中的this指针
- c++类中的this指针
- C++类中的this指针
- 【C/C++】this指针
- c++类中的this指针【摘自MSDN】
- C++之继承类中的this指针
- JavaScript中的this指针
- C++中的this指针
- C++中的this指针
- C++中的this指针
- c++中的this指针
- JavaScript中的this指针
- C++中的this指针
- VMware中ubuntu忘记密码的解决办法
- C# 读取含中文字符的数据,失败原因,和解决办法
- webpack之代码分离
- GitLab简介 使用
- kotlin 编译报Disable offline mode and sync project错误
- C++类中的this指针
- Linux+django 连接SqlServer的问题
- 木马病毒隐身穿墙术解密之花指令和终止进程
- 欢迎使用CSDN-markdown编辑器
- 简单工厂模式
- 软件工程网络课程作业二:命令行菜单小程序
- android 7.1 上wifi 热点 上的接口变化
- 解决Myeclipse破解run.bat无法运行!
- Java运算符_动力节点Java学院整理