Clase System::Random
Contenido
[
Ocultar
]Random class
Representa un generador de números pseudoaleatorios. Los objetos de esta clase solo deben asignarse mediante la función System::MakeObject(). Nunca cree una instancia de este tipo en la pila ni usando el operador new, ya que provocará errores en tiempo de ejecución y/o fallas de aserción. Siempre envuelva esta clase en un puntero System::SmartPtr y use ese puntero para pasarlo a funciones como argumento.
class Random : public System::Object
Métodos
| Método | Descripción |
|---|---|
| IsNull() const | Siempre devuelve false. |
| virtual Next() | Devuelve un número aleatorio no negativo menor que el valor máximo de int32. |
| virtual Next(int32_t) | Devuelve un número aleatorio no negativo menor que el máximo especificado. |
| virtual Next(int32_t, int32_t) | Devuelve un número aleatorio dentro del rango especificado. |
| virtual NextBytes(const ArrayPtr<uint8_t>&) | Llena los elementos del arreglo de bytes especificado con números aleatorios. |
| virtual NextDouble() | Devuelve un número aleatorio entre 0.0 y 1.0. |
| Random() | Inicializa una nueva instancia, usando un valor de semilla predeterminado dependiente del tiempo. |
| Random(int32_t) | Inicializa una nueva instancia de la clase System.Random, usando el valor de semilla especificado. |
Observaciones
#include "system/random.h"
#include "system/smart_ptr.h"
#include <iostream>
int main()
{
const auto rnd = System::MakeObject<System::Random>();
// Obtén un número de mes aleatorio y imprímelo.
auto monthNumber = rnd->Next(1, 13);
std::cout << "Month: " << monthNumber << std::endl;
// Llena el arreglo con números aleatorios.
auto arr = System::MakeObject<System::Array<uint8_t>>(12);
rnd->NextBytes(arr);
// Print the array.
for (auto i = 0; i < arr->get_Length(); ++i)
{
std::cout << static_cast<int>(arr[i]) << ' ';
}
std::cout << std::endl;
return 0;
}
/*
This code example produces the following output:
Month: 4
177 213 89 240 68 182 18 96 109 131 1 78
*/
Ver también
- Class Object
- Namespace System
- Library Aspose.Page for C++