C++中static数据成员详解

来源:互联网 发布:数组发筛选100以内素数 编辑:程序博客网 时间:2024/06/03 20:42

    本文和大家分享的主要是c++static数据成员的相关用法及源码示例,希望能帮助大家更好的学习C++

static(静态存储)数据成员

StaticTest.cpp : 定义控制台应用程序的入口点。

1.知识点

static(静态存储)数据成员:编译时就被创建和初始化。

2.代码

#include "stdafx.h"

#include

using namespace std;

class computer

{

private:

float price;

public:

static float total_price;//static数据成员 向编译器描述:如何为static数据成员分配内存

computer(const float p)

{

price = p;

total_price += p;

}

~computer()

{

total_price -= price;

}

void print()

{

cout<<"总价:"<<total_price<<endl;

}

};

float computer::total_price = 0;//真正的内存分配

int _tmain(int argc, _TCHAR* argv[])

{

computer comp1(7000);

cout<<"购买电脑1"<<endl;

//comp1.print();

cout<<computer::total_price<<endl;;

computer comp2(4999);//

cout<<"总价:"<<"购买电脑2"<<endl;

comp1.print();

computer comp3(2500);

cout<<"购买电脑3"<<endl;

comp1.print();

//推掉电脑2

comp2.~computer();

cout<<"退掉电脑2"<<endl;

comp1.print();

return 0;

}

3.运行结果

 


原文链接:http://www.maiziedu.com/wiki/cplus/data/

 

0 0