Visual studio2022 C++ 使用time(nullptr)报错
#include <ctime>#include <random>
#include <algorithm>
#include <numeric>
#include <vector>
using namespace std;
int main()
{
vector vec {1, 2, 3, 5};
random_device seeder;
const auto seed{ seeder.entropy() ? seeder() : time(nullptr)};
default_random_engine engine{ static_cast<default_random_engine::result_type>(seed) };
shuffle(begin(vec), end(vec), engine);
}
error C2129: 静态函数“time_t time(time_t *const )”已声明但未定义
想问下 这个是因为导入ctime的问题吗 还是需要做其他的事情
我是学习的这个例子
https://github.com/carlesmartin85/procpp5e/blob/65aedda6a92745beca48a5041411465a33cdf4cd/code/c20_code/03_ModifyingAlgorithms/12_shuffle.cpp g++测试编译没有问题,重新安装msvc试试呢 改一下头文件,加个iostream
#include <ctime>
#include <random>
#include <algorithm>
#include <numeric>
#include <vector>
#include <iostream>
using namespace std; 建议使用c++的 std::chrono
比如:std::chrono::system_clock::now( );
std::chrono::duration_cast< std::chrono::seconds >( std::chrono::system_clock::now( ) ) 你好,再见 发表于 2024-6-5 09:26
g++测试编译没有问题,重新安装msvc试试呢
我用的visual studio2022 编译就会报错 捷豹网络丶贱仔 发表于 2024-6-5 03:08
#include
#include
#include
还是报错的, 主要的问题是我使用visual studio2017就没有问题 , visual studio2022就有问题
页:
[1]