c++ - 将 sys_seconds 设置为纪元,即零
问题描述
我正在努力寻找一种将 sys_seconds 重置为零的好方法
date::sys_seconds st;
//st = date::sys_seconds(0); //no matching conversion for functional-style cast from 'int' to 'date::sys_seconds'
//st = date::sys_seconds{date::sys_seconds(0)}; //no matching conversion for functional-style cast from 'int' to 'date::sys_seconds'
//st = std::chrono::system_clock::from_time_t(0); //no viable overloaded '='
//st = date::sys_seconds(std::chrono::system_clock::from_time_t(0)); //no matching conversion for functional-style cast
st = std::chrono::time_point_cast<std::chrono::seconds>(std::chrono::system_clock::from_time_t(0)); //works, but verbose
有没有更好的办法?
解决方案
st = {};
说明: 的默认构造函数sys_seconds
将事物设置为零。所以这只是默认构造 asys_seconds
并将其分配给st
. 其他方法包括:
st = date::sys_seconds{};
和:
using namespace std::chrono_literals;
st = date::sys_seconds{0s};
推荐阅读
- swagger - 为什么 Swagger UI 发送 OPTIONS 请求方法而不是正确的方法,一旦我通过 Spring Gateway 访问它?
- ios - 评估数字的任何小数位并在 Swift 中将其更改为整数
- javascript - 我的网页什么也没有显示。没有 html、css 或图像,只是继续加载
- haskell - Haskell - 如何迭代到列表并保留原始列表而不仅仅是尾部
- mysql - 似乎无法按月分组
- version - 我们正在使用 ClearCase 版本控制,需要设置一个符号链接以在文件的单独分支上分开版本
- java - 我需要在最终用户计算机上安装什么来运行我用 eclipse 制作的 Java 应用程序
- eclipse - Eclipse 4.17.0 - 无法打开 Eclipse 市场 - NullPointerException
- php - Laravel 7 并非所有来自公用文件夹的图像都是可见的
- jquery - Jquery Text更改不适用于突出显示