我正在考慮不同的實現的這部分代碼中使用的「參數」全局變量:應避免在功能
unsigned int whyamIexisting=100000; // also good for me static unsigned ...
double rand_number_generation(){
// create random number [0,1]
static unsigned int rand_counter=0;
rand_counter++;
if(rand_counter > whyamIexisting) {
update_my_seed(time(NULL));
rand_counter=0;
}
// random number generation
return thats_your_gorgeous_numb(); // random algorithm
}
main(){
...modify whyamIexising
...use rand_number_generation() several times
...
}
我不該使用全局變量?如果是,你會建議什麼解決方案?
謝謝!
我不明白...如果僅在main()函數的作用域中使用全局變量,那麼它有什麼意義?它應該被聲明爲非全局的,在main()函數的範圍內... – johnkork 2014-12-03 15:28:53
您的示例不使用全局變量,因此除了完全刪除它之外,我們無法提供任何建議。它是否意味着隨機數發生器的狀態?在那種情況下,作爲RNG類的成員可能會更好。 – 2014-12-03 15:29:14
對不起!代碼中存在錯誤:現在使用WhyamIexisting!在函數rand_number_generation() – 2014-12-03 15:34:34