一个C++日期类(第二部份)[VC/C++编程]
本文“一个C++日期类(第二部份)[VC/C++编程]”是由七道奇为您精心收集,来源于网络转载,文章版权归文章作者所有,本站不对其观点以及内容做任何评价,请读者自行判断,以下是其具体内容:
本文合适初级读者
Chuck Allison 是盐湖城圣 Latter Day 教堂总部下耶稣教堂家族历史研究处的软件体系计划师.他拥有数学学士和数学硕士学位.他从1975年起开始编程,从1984年起他开始从事c语言的讲授和开辟.他目前的爱好是面向对象的技术及其教诲.他是X3J16,ANSI C ++尺度化委员会的一员.发送e-mail 到 allison@decus.org,大概拨打电话到 (801)240-4510 都可以与他获得接洽.
在上个月的封装中我提出了一个简单的C++日期类的雏形.为了供应一个可以计算两个日期的隔断的函数,这个类举例阐明了C++的下列特点:
内联函数
引用
构造函数
对私有数据成员的拜候掌握
在这个月的部份里我将增添相关的运算符、输入/输出操作和得到当前日期的本领.它们示范了下列特点:
运算符重载
流
友元函数
静态成员
当利用日期的时刻你常常需求肯定某一日期能否在另一日期之前.我将为日期类增添下面这个成员函数(拜见 Listing 1):
int compare(const Date& d2) const;
Date::compare 近似于strcmp-假如当前对象(*this)在d2之前,它返回一个负整数;假如这两个日期相同,则返回0;不然返回一个正整数(拜见 Listing 2 中的函数实现和 Listing 3 中的示例程序).就像你们都很熟习的C尺度库中的qsort一样,你也可以利用Date::compare来对日期举行排序,就仿佛你利用strcmp对字符串举行排序一样.下面是一个可传送给qsort的对比函数(下个月的代码封装将包含qsort):#include "date.h"
int datecmp(const void *p1, const void *p2)
{
const Date
*d1p = (const Date *) p1,
*d2p = (const Date *) p2;
return d1p->compare(*d2p);
}
以上是“一个C++日期类(第二部份)[VC/C++编程]”的内容,如果你对以上该文章内容感兴趣,你可以看看七道奇为您推荐以下文章:
本文地址: | 与您的QQ/BBS好友分享! |