类对日期date的封装

类对日期date的封装


主函数

#include "stdafx.h"
#include <iostream> 
using namespace std;

#include "Date.h"
using namespace Space;


int _tmain(int argc, _TCHAR* argv[])
{
	Date d(2008,8,8);
	
	if (d.isLeapYear())
		cout << " is leap Year" << endl;
	else
		cout << " is not leap Year" << endl;

	Date d2(d);//都是栈空间数据 用系统默认的拷贝构造器
	d2.print();
	return 0;
}


Date.h

#pragma once//与#ifndef DATE_H  #define DATE_H  #endif 的作用相同

namespace Space
{
	class Date
	{
	public:
		Date(int y=0, int m=0, int d=0);
		//构造器中都是栈上空间 使用系统默认的析构器就好
		void print(); //成员函数
		int getYear();
		bool isLeapYear();
	private:
		int year;  //数据成员
		int month;
		int day;
	};
}

Date.cpp

#include "Date.h"
#include <iostream>
using namespace std;

namespace Space
{

	//Date::Date(int y, int m, int d)
	//{
	//	year = y;
	//	month = m;
	//	day = d;
	//}


	//构造器参数列表 效率很高 因为在没有调用函数之前 
	//也就是没有进入{}之前就 完成了赋值
	Date::Date(int y, int m, int d) 
		:year(y), month(m), day(d)
	{
	}


	void Date::print()
	{
		cout << year << "/" << month << "/" << day << endl;
	}


	//year为私有成员 如果想在类外部得到 需要添加方法
	int Date::getYear() 
	{
		return year;
	}


	bool Date::isLeapYear()
	{
		if (year % 4 == 0 && year % 100 != 0 || year % 400 == 0)
			return true;
		else
			return false;
	}

}



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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值