IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> C++知识库 -> C++之 static 关键字 -> 正文阅读

[C++知识库]C++之 static 关键字

C++之 static 关键字

C++中的关键字 static,顾名思义表示静止、静态。

1. 作用于函数内部的局部变量

局部作用域静态变量的特点:当一个函数返回后,下一次再调用时,该变量还会保持上次的值,函数内部的静态变量只开辟一次空间,且不会因为多次调用产生副本,也不会因为函数返回而失效。

注意:

  1. 普通局部变量如果未赋予初值,编译器会报错;
  2. 当局部变量加上 static 后,定义时如果未赋予初值,则会默认初始化为 0

2. 作用于类的成员

解决同一个类的不同对象之间数据和函数共享问题

2.1 作用于类的数据成员

静态成员在每一个类中只有一个副本,由该类所有对象共同维护和使用,从而实现同一个类的不同对象的数据共享。需要注意:

  • 使用 类名::标识符 的方式访问静态数据成员,因为静态数据成员不属于任何一个对象
  • 对静态数据成员初始化,在类定义外进行,以这种方式专门为他们分配空间。如果直接在类内定义静态数据成员,编译器则会报错

2.2 作用于类的函数成员

静态成员函数就是使用 static 关键字声明的函数成员,同静态数据成员一样,静态成员函数也属于整个类,由该类所有对象共同拥有,为所有对象共享

(1)静态成员函数主要用于处理该类的静态数据成员,可以直接调用静态数据成员。如果访问非静态成员,要通过对象来访问。

class Person {
public:
	static void findPerson(Person person);
private:
	int age;
	static int sex;
};
void Person::findPerson(Person person) 
{
	cout << age;		// 对 age 的引用是错误的
	cout << person.age;	// 正确
	cout << sex;		//对 sex 的引用是正确的的,引用静态数据成员
}

(2)在类外使用j静态成员函数

  • 使用 类名 :: 函数名 操作符来调用静态成员函数
  • 使用 类.函数名 调用
  C++知识库 最新文章
【C++】友元、嵌套类、异常、RTTI、类型转换
通讯录的思路与实现(C语言)
C++PrimerPlus 第七章 函数-C++的编程模块(
Problem C: 算法9-9~9-12:平衡二叉树的基本
MSVC C++ UTF-8编程
C++进阶 多态原理
简单string类c++实现
我的年度总结
【C语言】以深厚地基筑伟岸高楼-基础篇(六
c语言常见错误合集
上一篇文章      下一篇文章      查看所有文章
加:2022-03-21 20:30:29  更:2022-03-21 20:32:17 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/24 2:53:36-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码