c++ - 为什么错误:“locate_zone”不是“std::chrono”的成员
问题描述
代码:
//test.cpp
#include<chrono>
#include<string>
using namespace std;
int main(){
string str("Europe/Oslo");
std::chrono::locate_zone(str);
}
编译:
/tools/gcc/6.3.0/bin/g++ --std=c++11 test.cpp
输出:
test.cpp: In function ‘int main()’:
test.cpp:6:3: 错误:'locate_zone' 不是'std::chrono' std::chrono::locate_zone(str) 的成员;^~~
解决方案
您现在可以通过使用Howard Hinnant 的免费、开源、时区库来试验这个 C++20 功能。
您需要将命名空间从更改std::chrono
为date
:
#include "date/tz.h"
#include<chrono>
#include<string>
using namespace std;
int main(){
string str("Europe/Oslo");
date::locate_zone(str);
}
推荐阅读
- joomla - 无法让 addScriptDeclaration() 在模块内工作
- spring-boot - 为单元测试生成 javax.validation.ConstraintViolationException
- c# - Unity 角色资产在多人游戏中不起作用
- node.js - Hue API 远程基本认证
- c# - 如何检索频道中的不和谐用户列表
- blueprism - 计算最后一个工作日
- python - 获取ValueError:尝试粘贴时透明蒙版错误,图像和蒙版相同
- php - 如何使用 ImageMagick 实现这种模糊的文本轮廓效果?
- javascript - 从日期选择器更改为日期时间选择器
- java - Java程序未从命令行读取环境变量集