静态成员函数与静态数据的使用

#include <stdio.h>
#include <stdlib.h>
#include<math.h>
#include <string.h>
using namespace std;
class mm
{
public:
    mm(){num=0;quantity=0;price=0;}
    mm(int a,int b,int c){num=a;quantity=b;price=c;}///构造函数及其初始化
    void sum();
    void totalquantity();      ///普通函数
    static double average();   ///定义静态成员函数
    static void display();
private:
    static double discount,sum1;
    static int n;
    int num,quantity;
    double price;
};
void mm::sum()
{
    if(quantity>=10)
        sum1+=1.0*quantity*discount*price;
    else
        sum1+=1.0*quantity*price;
}
void mm::totalquantity()
{
    n+=quantity;
}
double mm::average()
{
    return (1.0*sum1/n);
}

void mm::display()
{
    cout<<"总销售款:"<<sum1<<endl<<"平均售价:"<<mm::average()<<endl;
}
double mm::sum1=0;    ///初始化静态数据成员的方法
double mm::discount=0.95;
int mm::n=0;

int main()
{
    mm m[3]     ///各数据之间用逗号分隔
    {
        mm(001,5,23.5),
        mm(002,11,21.7),
        mm(003,9,23)
    };
    for(int i=0;i<3; i++)
    {
        m[i].totalquantity();
        m[i].sum();
    }
    mm::display();   ///调用静态函数的方法
    return 0;
}


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值