-2
我想用C++創建一個小遊戲,因此我需要一個函數來返回特定範圍內的隨機數。mt19937隨機數範圍 - 奇怪的輸出00A8106E
我發現的大部分答案都與這個相似https://stackoverflow.com/a/19728404/5780938,我認爲這是我正在尋找的解決方案。
爲了測試函數是否有效,我想要的是什麼,我嘗試以幾種不同的方式輸出結果。
目前我的代碼看起來是這樣的:
#include "stdafx.h"
#include <iostream>
#include <random>
int zufälligeZahl();
int main()
{
using std::cin;
using std::cout;
cout << zufälligeZahl << "\n";
cout << zufälligeZahl << "\n";
cout << zufälligeZahl << "\n";
cout << zufälligeZahl << "\n";
return 0;
}
int zufälligeZahl()
{
std::random_device rd;
std::mt19937 zGenerator(rd());
std::uniform_int_distribution<int> uni(1, 13);
int random_integer = uni(zGenerator);
return random_integer;
}
我已經在許多不同的方式嘗試這樣做,但無論我做什麼,這是行不通的。要麼輸出是類似00A8106E,要麼我根本沒有得到任何輸出。
我使用Visual Studio 2015年社區
哦,該死的,這是一個愚蠢的錯誤:(奇怪的是,我實際上試圖複製來自不同網站的解決方案,但它仍然沒有工作,我想這讓我更加困惑。很多爲您的答案! – Andy