c++ - 仅生成零的犰狳随机数生成器(Windows、MSYS2)
问题描述
下面的测试程序应该生成一个包含 5 个随机元素的向量,但是当我在我的机器上编译和运行它时只包含零。
#include <iostream>
#include <armadillo>
using std::cout;
using std::endl;
using arma::vec;
int main()
{
arma::arma_rng::set_seed(1);
vec v = arma::randu<vec>(5);
cout << v << endl;
cout << v(0) << endl;
return 0;
}
编译/输出
$ g++ main.cpp -o example -std=c++11 -O2 -larmadillo
$ ./example.exe
0
0
0
0
0
0
我在 Windows 10 上,使用来自 MSYS2 的 gcc((Rev1,由 MSYS2 项目构建)8.2.1 20181214)和 Armadillo(9.200.6)。
软件包(mingw64 子系统中的 pacman):
mingw64/mingw-w64-x86_64-armadillo 9.200.6-1
mingw64/mingw-w64-x86_64-gcc-8.3.0-1
知道是什么原因造成的吗?
我有一种暗示,这可能是因为我使用的是 Armadillo 的 MSYS2 版本,但我不确定,并且还没有测试自己(还)编译库。
编辑:我有一种暗示,这与 MSYS 有关,所以我在这里打开了一个问题:https ://github.com/msys2/MINGW-packages/issues/5019
解决方案
推荐阅读
- reactjs - React 容器模式中的 Formik
- swift - 如何在 2021 年编写一个 Swift String Characters.reverse 函数
- swift - Swift callkit 有时在接到电话后无法激活扬声器(仅限来电)
- java - 从 Java 文件中读取一组数字,设置为 1 到 3、4 到 16
- c++ - 出现错误错误:“b”之前的预期主表达式
- java - 我们如何利用自定义的@Qualifier 方法?
- sql - 函数总是返回 null
- google-fit - 如何在 Google Fit 会话摘要中的路线图和/或“公里分割/步速”图表上创建“英里标记”?
- firebase - 如何在我的 Flutter 应用程序中正确地从 Firebase 函数调用中转换响应
- php - 邮件未通过 Mailgun API Laravel 8 发送