2012-02-09 36 views
0

我想改变我的应用程序中的随机种子,但Qt Creator对我说:“c:\ qt \ 2010.05 \ mingw \ bin ../ lib/gcc /mingw32/4.4.0/include/c++/ctime:62:error:':: clock_t'尚未声明srand(time(NULL))与MinGW/Qt

c:\ qt \ 2010.05 \ mingw \ bin ../ lib/gcc/mingw32/4.4 .0/include/C++/ctime:66:error:':: clock'尚未声明

c:\ qt \ 2010.05 \ mingw \ bin ../ lib/gcc/mingw32/4.4.0/include/C++/ctime:67:error:':: difftime'尚未声明

c:\ qt \ 2010.05 \ mingw \ bin ../ lib/gcc/mingw32/4.4.0/include/C++/ctime :68:错误:':: mktime'没有恩宣布

C:\ QT \ 2010.05 \ MinGW的\ BIN ../的lib/GCC/mingw32的/ 4.4.0 /包括/ C++ /的ctime:69:错误: '::时间' 尚未声明

C:\ QT \ 2010.05 \ MinGW的\ BIN ../的lib/GCC/mingw32的/ 4.4.0 /包括/ C++ /的ctime:70:错误: ':: asctime' 尚未声明

C: \ qt \ 2010.05 \ mingw \ bin ../ lib/gcc/mingw32/4.4.0/include/C++/ctime:71:error:':: ctime'尚未声明

c:\ qt \ 2010.05 \ mingw \ bin ../ lib/gcc/mingw32/4.4.0/include/C++/ctime:72:error:':: gmtime'尚未声明

C:\ QT \ 2010.05 \ mingw的\ BIN ../ LIB/GCC /的mingw32/4.4.0 /包括/ C++ /的ctime:73:错误: '::本地时间' 尚未声明

Ç :\ qt \ 2010.05 \ mingw \ bin ../ lib/gcc/mingw32/4.4.0/include/C++/ctime:74:error:':: strftime'尚未声明“

我有: #include <cstdlib> #include <ctime> 这很奇怪,因为用VC++编译相同的代码!

谢谢!

+0

您能否显示失败的代码?更好:一个(尽可能)减少的例子,仍然以相同的方式失败。 – swalog 2012-02-09 14:12:33

+0

我不能在其他项目中工作,我不明白为什么在这个项目中不起作用 – Guillaume 2012-02-09 14:45:41

+0

你是否在用sd ::调用srand之前?一个不编译的简短例子确实会有所帮助。 – kenrogers 2012-02-09 15:17:50

回答

0
#include <cstdlib> 
#include <ctime> 

#include "Coloration.h" 

class Glouton : public Coloration 
{ 
    public: 
      //Fonctions 
      virtual void colorier(Graphe*); 
}; 



#include "Glouton.h" 

void Glouton::colorier(Graphe* g) 
{ 
     srand((unsigned)time(0)); 

    vector<Sommet*> liste = g->getSommets(); 

    int nbr_sommets = liste.size(); 
    int sommets_color = 0; 
    int random = 0; 
    int couleur_max = 0; 
    vector<int> tab; 

    while(sommets_color != nbr_sommets) 
    { 
     random = rand()%liste.size(); 

      [.....] 
    } 
} 
0

检查所有包含,因为您可能没有得到正确的包含文件。确保你没有包含你自己的time.h版本,在嵌套包含的某个地方。

相关问题