⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 unionaffiliation.cpp

📁 著名的uncle Bob的Agile software development的代码
💻 CPP
字号:
#include "UnionAffiliation.h"#include "ServiceCharge.h"#include "Date.h"#include "Paycheck.h"UnionAffiliation::~UnionAffiliation(){}UnionAffiliation::UnionAffiliation(int memberId, double dues): itsMemberId(memberId), itsDues(dues){}ServiceCharge* UnionAffiliation::GetServiceCharge(const Date& date){  return itsServiceCharges[date];}void UnionAffiliation::AddServiceCharge(const Date& date, double amount){  ServiceCharge* sc = new ServiceCharge(date, amount);  itsServiceCharges[date] = sc;}namespace{  int NumberOfFridaysInPayPeriod(const Date& payPeriodStart,				 const Date& payPeriodEnd)  {    int fridays = 0;    for (Date day = payPeriodStart; day <= payPeriodEnd; day++) {      if (day.GetDayOfWeek() == Date::friday)	fridays++;    }    return fridays;  }}double UnionAffiliation::CalculateDeductions(Paycheck& pc) const{  double totalServiceCharge = 0;  double totalDues = 0;  map<Date, ServiceCharge*>::const_iterator i;  for (i=itsServiceCharges.begin(); i != itsServiceCharges.end(); i++) {    ServiceCharge* sc = (*i).second;    if (Date::IsBetween(sc->GetDate(), pc.GetPayPeriodStartDate(), pc.GetPayPeriodEndDate()))      totalServiceCharge += sc->GetAmount();  }  int fridays = NumberOfFridaysInPayPeriod(pc.GetPayPeriodStartDate(),					   pc.GetPayPeriodEndDate());  totalDues = itsDues * fridays;  return totalDues + totalServiceCharge;}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -