• 使用boost库生成 随机数 随机字符串


     
    
    #include <iostream>
    #include <boost/random/random_device.hpp>
    #include "boost/random.hpp"
    #include "boost/generator_iterator.hpp"
    using namespace std;
    
    int randString() 
    {
        /*<< We first define the characters that we're going
             to allow.  This is pretty much just the characters
             on a standard keyboard.
        >>*/
        std::string chars(
            "abcdefghijklmnopqrstuvwxyz"
            "ABCDEFGHIJKLMNOPQRSTUVWXYZ"
            "1234567890"
            "!@#$%^&*()"
            "`~-_=+[{]}\|;:'",<.>/? ");
        /*<< We use __random_device as a source of entropy, since we want
             passwords that are not predictable.
        >>*/
        boost::random::random_device rng;
        /*<< Finally we select 8 random characters from the
             string and print them to cout.
        >>*/
        boost::random::uniform_int_distribution<> index_dist(0, chars.size() - 1);
        for(int i = 0; i < 8; ++i) {
            std::cout << chars[index_dist(rng)];
        }
        std::cout << std::endl;
    }
    int main() 
    {
        cout<<"===============rand String==============="<<endl;
        randString();
    
    
        cout<<"===============rand number==============="<<endl;
          typedef boost::mt19937 RNGType;
          RNGType rng;
          rng.seed(time(NULL));
          boost::uniform_int<> one_to_six( 99999, 999999 );
          boost::variate_generator< RNGType, boost::uniform_int<> >
                        dice(rng, one_to_six);
          for ( int i = 0; i < 6; i++ ) 
          {
              int n  = dice();
              cout << n << endl;
         }
    }                     

     使用boost库生成随机字符串 随机数,生成随机数还是比较方便,随机字符串倒没觉得比rand方便多少,反而麻烦
  • 相关阅读:
    企业级应用架构(二)三层架构之数据访问层的封装与抽象
    企业级应用架构(一) 三层架构之解耦
    AngularJS-01.AngularJS,Module,Controller,scope
    ASP.NET-A low-level Look at the ASP.NE
    批量Insert
    C#连接Oracle数据库的方法
    List 集合 一行4个排序
    asp.net 14
    Linux 定时任务的配置
    Windows 修改域用户账户密码
  • 原文地址:https://www.cnblogs.com/mtcnn/p/9410054.html
Copyright © 2020-2023  润新知