STLSoft - ... Robust, Lightweight, Cross-platform, Template Software ... ATLSTL - Template Software for the Active Template Library COMSTL - The Standard Template Library meets the Component Object Model .netSTL - Standard Template Library meets the Microsoft.NET Common Language Runtime InetSTL - The Standard Template Library meets WinInet MFCSTL - Template Software for the Microsoft Foundation Classes UNIXSTL - Template Software for the UNIX Operating System WinSTL - where the Standard Template Library meets the Win32 API

Main Page   Modules   Namespace List   Class Hierarchy   Alphabetical List   Compound List   File List   Namespace Members   Compound Members   File Members   Related Pages  

random_range Class Reference
[Range Classes]

This range class represents a range of random numbers. More...

#include <random_range.hpp>

Inheritance diagram for random_range:

notional_range_tag List of all members.

Notional Range methods

ss_bool_t is_open () const
 Indicates whether the range is open.

value_type current () const
 Returns the current value in the range.

class_type & advance ()
 Advances the current position in the range.

 operator operator_bool_type () const
 Indicates whether the range is open.

value_type operator * () const
 Returns the current value in the range.

class_type & operator++ ()
 Advances the current position in the range.

class_type operator++ (int)
 Advances the current position in the range, returning a copy of the range prior to its being advanced.


Public Methods

Construction
 random_range (ss_size_t numValues, value_type minValue=0, value_type maxValue=RAND_MAX)
 Constructs a random range.

Attributes
value_type minimum () const
 The lower limit of the random number range.

value_type maximum () const
 The upper limit of the random number range.

Comparison
bool operator== (class_type const &) const
 Evaluates whether two ranges are equal.

bool operator!= (class_type const &rhs) const
 Evaluates whether two ranges are unequal.


Detailed Description

This range class represents a range of random numbers.

It is categoried as a Notional Range

It could be used as follows

      // Create a range of 10 values, whose value are between -100 and +100
      stlsoft::random_range   r(10, -100, +100);
   
      // Dump them to stdout
      stlsoft::r_copy(r, std::ostream_iterator<int>(" "));
    


Constructor & Destructor Documentation

random_range ss_size_t    numValues,
value_type    minValue = 0,
value_type    maxValue = RAND_MAX
[inline]
 

Constructs a random range.

Parameters:
numValues  The number of values in the range
minValue  The lower limit of the random number range
maxValue  The upper limit of the random number range


Member Function Documentation

class_type& advance   [inline]
 

Advances the current position in the range.

value_type current   const [inline]
 

Returns the current value in the range.

ss_bool_t is_open   const [inline]
 

Indicates whether the range is open.

value_type maximum   const [inline]
 

The upper limit of the random number range.

value_type minimum   const [inline]
 

The lower limit of the random number range.

value_type operator *   const [inline]
 

Returns the current value in the range.

operator operator_bool_type   const [inline]
 

Indicates whether the range is open.

bool operator!= class_type const &    rhs const [inline]
 

Evaluates whether two ranges are unequal.

class_type operator++ int    [inline]
 

Advances the current position in the range, returning a copy of the range prior to its being advanced.

class_type& operator++   [inline]
 

Advances the current position in the range.

bool operator== class_type const &    const [inline]
 

Evaluates whether two ranges are equal.


The documentation for this class was generated from the following file:

STLSoft Libraries documentation © Synesis Software Pty Ltd, 2001-2004