基于C++实现以周为时间段的简易日期获取机制

1.背景

在很多业务场景中,都有一个类似于每周计划/每周任务的功能,比如游戏中玩家每周都有一定的任务需要完成来获取奖励。这里就需要即使用户客户端时间不同,在服务端也要根据统一时间来进行判断。

2.需求

这套机制需要尽可能的高效快速,并且易于维护,不需要经常修改配置使其满足各种时间过程,例如每周过渡、每月过渡、每年过渡等等。

3.实现

该机制的实现主要有几个方面:

  • 使得本周的判断有独立性、唯一性,防止与其他周的混淆。

  • 能够计算本周开始到现在的每日日期信息,从而进行其他日期有关操作。

本机制使用的周数是基于unix时间戳(Unit timestamp)来制定的。具体步骤如下:

  1. 获取当前时间戳,使用C++中的time方法
time_t cur_time = time(NULL);

2.计算本周的index

int week_index = (cur_time + (8 * 3600) + (3 * 24 * 3600) ) / (60 * 60 * 24 *
  • 2
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 3
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值