为什么 coliru return 与 chrono::system_clock::now().time_since_epoch() 的值相同?
Why does coliru return the same values for chrono::system_clock::now().time_since_epoch()?
在 coliru 上测试别人的代码时,我注意到 std::chrono::system_clock::now().time_since_epoch()
returns 在多个 运行 上有相同的值。我在 coliru.
上用 g++ 和 clang++ 测试了以下代码
#include <iostream>
#include <chrono>
int main()
{
auto seed = std::chrono::system_clock::now().time_since_epoch().count();
std::cout << seed << "\n";
std::cout << std::chrono::system_clock::now().time_since_epoch().count() << "\n";
return 0;
}
输出:
g++ -std=c++11 -O2 -Wall -pedantic -pthread main.cpp && ./a.out
1433249917642594133
1433249917642674289
它在 ideone 上确实按预期工作,显然在我的电脑上。
有谁知道为什么 coliru returns 每个 运行 的值都相同?
Coliru 缓存每个片段的结果,因此这是预期的行为。
您可以通过简单地更改源文件(例如,添加更多空格或更改注释的内容)来强制重新运行。
(来源:作者我认识。)
在 coliru 上测试别人的代码时,我注意到 std::chrono::system_clock::now().time_since_epoch()
returns 在多个 运行 上有相同的值。我在 coliru.
#include <iostream>
#include <chrono>
int main()
{
auto seed = std::chrono::system_clock::now().time_since_epoch().count();
std::cout << seed << "\n";
std::cout << std::chrono::system_clock::now().time_since_epoch().count() << "\n";
return 0;
}
输出:
g++ -std=c++11 -O2 -Wall -pedantic -pthread main.cpp && ./a.out
1433249917642594133
1433249917642674289
它在 ideone 上确实按预期工作,显然在我的电脑上。
有谁知道为什么 coliru returns 每个 运行 的值都相同?
Coliru 缓存每个片段的结果,因此这是预期的行为。
您可以通过简单地更改源文件(例如,添加更多空格或更改注释的内容)来强制重新运行。
(来源:作者我认识。)