我正在创建一个应用程序,我需要生成多个随机字符串,几乎就像一个唯一的ID,它由一定长度的ASCII字符组成,混合了大写/小写/数字字符。
是否有任何Qt库可以实现这一目标?如果没有,在纯c ++中生成多个随机字符串的首选方法是什么?
答案 0 :(得分:23)
你可以写一个这样的函数:
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;
}