FBB::RandBuffer(3bobcat) | random number streambuf | FBB::RandBuffer(3bobcat) |
FBB::RandBuffer - std::streambuf generating random numbers
#include <bobcat/randbuf>
Linking option: -lbobcat
FBB:RandBuffer objects may be used as a std::streambuf of std::istream objects to allow the extraction of random numbers from the stream.
FBB
All constructors, members, operators and manipulators, mentioned in this
man-page, are defined in the namespace FBB.
std::streambuf
Copy and move constructors (and assignment operators) are not available. `
Since the class uses public derivation from std::streambuf, all members of this class can be used.
#include <iostream> #include <istream> #include "../randbuf" using namespace std; using namespace FBB; int main(int argc, char **argv) {
if (argc == 1)
{
cout << "expect: nruns min max seed\n";
return 1;
}
RandBuf rb(stoi(argv[2]), stoi(argv[3]), stoul(argv[4]));
istream istr(&rb);
for (unsigned idx = stoul(argv[1]); idx--; )
{
int c;
if (!(istr >> c))
{
cout << "extraction failed\n";
break;
}
cout << "next: " << c << endl;
}
int count = 0;
while (istr.unget())
count++;
cout << "number of successful unget()-calls: " << count << endl;
istr.clear();
istr >> count;
cout << "and read: " << count << endl; }
bobcat/randbuf - defines the class interface
bobcat(7), irandstream(3bobcat), rand(3), srand(3), std::streambuf
None Reported.
Bobcat is an acronym of `Brokken’s Own Base Classes And Templates’.
This is free software, distributed under the terms of the GNU General Public License (GPL).
Frank B. Brokken (f.b.brokken@rug.nl).
2005-2020 | libbobcat-dev_5.07.00 |