[РЕШЕНО] qrand и qsrand.., Ускорение времени)) |
Здравствуйте, гость ( Вход | Регистрация )
[РЕШЕНО] qrand и qsrand.., Ускорение времени)) |
breeve |
29.12.2009, 15:54
Сообщение
#1
|
Участник Группа: Участник Сообщений: 188 Регистрация: 26.12.2009 Пользователь №: 1336 Спасибо сказали: 9 раз(а) Репутация: 1 |
Вот небольшой код:
Меня интересует такой вопрос. Может ли случайное значение вычислять быстрее чем каждую секунду? Если может то как это сделать? Сообщение отредактировал breeve - 29.12.2009, 15:55 |
|
|
breeve |
29.12.2009, 21:22
Сообщение
#2
|
Участник Группа: Участник Сообщений: 188 Регистрация: 26.12.2009 Пользователь №: 1336 Спасибо сказали: 9 раз(а) Репутация: 1 |
main.cpp #include <QtGui> #include "pass.h" int main(int argc, char *argv[]) { QApplication a(argc, argv); Pass w; w.setFixedSize(w.minimumSize().width(), w.minimumSize().height()); w.show(); return a.exec(); } pass.cpp #include "pass.h" //#include "inputDialog.h" Pass::Pass(QWidget *parent) : QWidget(parent) { lbl = new QLabel("&Password:"); ptxt = new QLineEdit; lbl->setBuddy(ptxt); generate = new QPushButton("Generate"); settings = new QPushButton("Settings"); vLay = new QVBoxLayout; hLay = new QHBoxLayout; hLay->addWidget(generate); hLay->addWidget(settings); vLay->addWidget(lbl); vLay->addWidget(ptxt); vLay->addLayout(hLay); setLayout(vLay); connect(settings, SIGNAL(clicked()), SLOT(slotSettingsClicked())); connect(generate, SIGNAL(clicked()), SLOT(slotGenerate())); } void Pass::slotSettingsClicked() { //InputDialog input; //input.show(); } void Pass::slotGenerate() { QString alf = "ABCDEFGHIJKLMNOPRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789"; QString str; int a = 0; qsrand(time(NULL)); for(int i = 0; i < 8; i++) { a = qrand() % 62; qDebug() << a; str[i] = alf[a]; } ptxt->clear(); ptxt->insert(str); } pass.h #ifndef PASS_H #define PASS_H #include <QtGui> class Pass : public QWidget { Q_OBJECT public: QLabel* lbl; QLineEdit* ptxt; QPushButton* generate; QPushButton* settings; QVBoxLayout * vLay; QHBoxLayout * hLay; Pass(QWidget *parent = 0); ~Pass() {}; public slots: void slotSettingsClicked(); void slotGenerate(); }; #endif // PASS_H Ааа... Я вообщем понял в чем проблема)) Надо было просто srand не в слоте писать а в конструкторе.. Но все равно и на том спасибо.. |
|
|
Текстовая версия | Сейчас: 22.12.2024, 13:09 |