6

我正在创建一个需要生成多个随机字符串的应用程序,这几乎就像一个由一定长度的 ASCII 字符组成的唯一 ID,这些字符混合了大写/小写/数字字符。

是否有任何 Qt 库可以实现这一目标?如果不是,在纯 C++ 中生成多个随机字符串的首选方法是什么?

4

1 回答 1

26

你可以写一个这样的函数:

QString GetRandomString() const
{
   const QString possibleCharacters("ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789");
   const int randomStringLength = 12; // assuming you want random strings of 12 characters

   QString randomString;
   for(int i=0; i<randomStringLength; ++i)
   {
       int index = qrand() % possibleCharacters.length();
       QChar nextChar = possibleCharacters.at(index);
       randomString.append(nextChar);
   }
   return randomString;
}
于 2013-09-18T07:48:51.437 回答