zoukankan      html  css  js  c++  java
  • 一个可以返回受限集中随机数字的类,返回值不重复。

    #include <vector>
    using namespace std;

    class RandomLimitNum
    {
    public:
    RandomLimitNum(
    int begin_num,int end_num);
    bool GetCurrentRandomNum(int * result);
    private:
    vector
    <int> m_vector;
    };
    #include "stdafx.h"
    #include
    "RandomLimitNum.h"

    RandomLimitNum::RandomLimitNum(
    int begin_num,int end_num)
    {
    for (int i = begin_num;i <= end_num; ++i)
    {
    m_vector.push_back(i);
    }
    }
    bool RandomLimitNum::GetCurrentRandomNum(int * result)
    {
    size_t count
    = m_vector.size();
    if (count == 0)
    {
    return false;
    }
    else if (count == 1)
    {
    *result = m_vector[0];
    m_vector.erase(m_vector.begin());
    return true;
    }
    SYSTEMTIME st;
    GetLocalTime(
    &st);
    srand(st.wSecond
    *st.wMinute+st.wSecond);
    int random = rand()%count;
    *result = m_vector[random];
    vector
    <int>::iterator delete_it = m_vector.begin()+random;
    m_vector.erase(delete_it);
    return true;
    }

      

  • 相关阅读:
    Annotation
    injector
    Java容器(container)
    build tool(构建工具)maven和gradle安装方法
    version control(版本控制)
    函数式编程
    URI与URL
    超文本传输协议HTTP
    annotation的理解
    Injection
  • 原文地址:https://www.cnblogs.com/winnersun/p/2113410.html
Copyright © 2011-2022 走看看