https://www.jb51.cc/csharp/1193374.html
编程之家收集整理的这篇文章主要介绍了C++学习基础知识--this指针、静态成员、常量成员函数,编程之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
一、this指针
1、C++程序到C程序的翻译
2、this指针作用:非静态成员函数中可以直接使用this来代表指向该函数作用的对象的指针
3、this指针和静态成员函数:静态成员函数并不具体作用与某个对象,所以静态成员函数中不能使用 this 指针
二、静态成员
- 静态成员:在说明前面加了static关键字的成员。
- 普通成员变量每个对象有各自的一份,而静态成员变量一共就一份,为所有对象共享,sizeof 运算符不会计算静态成员变量。
- 普通成员函数必须具体作用于某个对象,而静态成员函数并不具体作用于某个对象,不需要通过对象就能访问。
1、访问静态成员的方法:
- 类名::成员名 CRectangle::PrintTotal();
- 对象名.成员名 CRectangle r; r.PrintTotal();
- 指针->成员名 CRectangle * p = &r; p->PrintTotal();
- 引用.成员名 CRectangle & ref = r; int n = ref.nTotalNumber;
2、注意事项:
- 静态成员变量本质上是全局变量,哪怕一个对象都不存在,类的静态成员变量也存在
- 必须在定义类的文件中对静态成员变量进行一次说明或初始化。否则编译能通过,链接不能通过
- 在静态成员函数中,不能访问非静态成员变量,也不能调用非静态成员函数