C++ 'da küçük bir oyun oluşturmak istiyorum ve bu nedenle belirli bir aralıkta rastgele sayıları döndürmek için bir fonksiyona ihtiyacım var.mt19937 rasgele sayı aralığı - garip çıkış 00A8106E
Bulduğum cevapların çoğu bu bir https://stackoverflow.com/a/19728404/5780938'a benziyordu ve sanırım bu aradığım çözüm.
İşlevi yapıp yapmadığımı sınamak için, ne istediğimi test etmek için sonuçları farklı yollarla denedim. Şu anda
benim kod şöyle görünür:
#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;
}
Ben çok farklı şekillerde bu denedim ama hiçbir yaparsam yapayım, bu işe yaramaz. Çıktı 00A8106E gibi bir şey, yoksa hiç çıktı almıyorum.
Ben Visual Studio Topluluk 2015
Oh, lanet olsun, bu aptalca bir hataydı: (…) Garip olan şu ki, aslında farklı web sitelerinden çözümler kopyalamayı denedim ve hala işe yaramadı, sanırım bu beni daha da karıştırdı. cevabınız için çok! – Andy