码迷,mamicode.com
首页 > 编程语言 > 详细

【C++】static 静态成员

时间:2020-07-27 09:23:11      阅读:71      评论:0      收藏:0      [点我收藏+]

标签:member   pre   分配   建立   ++   构造函数   oid   include   静态成员   

静态成员

静态成员包括静态数据成员和静态成员函数,提供了同类对象间数据成员的共享机制

静态成员不是某个对象的成员,是类所有对象的共享成员,只建立一个成员副本

静态成员的定义与引用

定义格式:static 类型 成员名

引用格式:类名::静态成员

静态数据成员

初始化格式:类型 类名::静态数据成员 = 初始化值

静态数据成员为同类所有对象所共享,不能使用构造函数初始化,必须单独初始化

静态数据成员不能在任何函数中分配内存和初始化

静态成员函数

静态成员函数可以直接访问本类静态数据成员和静态成员函数,但访问非静态成员需要借助对象调用

在对象创建之前,静态成员函数就可以处理静态数据成员

#include <iostream.h>

class type_name
{
public:
	type_name()
	{
		cout << "[Constructor] data_member = " << data_member <<endl;
	}

	static void set_data_member(int arg);

private:
	static int data_member;
};

void type_name::set_data_member(int arg)
{
	data_member = arg;
	cout << "data_member = " << data_member <<endl;
}

int type_name::data_member = 0;


void main()
{
	type_name::set_data_member(99);
	type_name obj;
}

  

【C++】static 静态成员

标签:member   pre   分配   建立   ++   构造函数   oid   include   静态成员   

原文地址:https://www.cnblogs.com/skullboyer/p/13383048.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!