這是一些C++代碼的摘錄,我將有詳細些日子來解釋:C++:&rand做了什麼?
std::vector<int> vct(8, 5);
std::generate(vct.begin(), vct.end(), &rand);
std::copy(vct.rbegin(), vct.rend(),
std::ostream_iterator<int>(std::cout, "\n"));
我想我明白它的一切,除了微小的神祕&蘭特。它究竟做了什麼?我的意思是顯然它會產生一些僞隨機數,但它們始終保持不變。 &蘭特從哪裏來?它是什麼樣的表達呢?它產生的價值從何而來?我有點困惑...
另外,我既沒有在代碼中發現任何其他出現的「rand」字樣,也沒有看到任何可能與隨機數字有關的代碼。這讓我想知道,因爲我在C++中的(非常有限的)經驗表明,只有極少數事情可以工作,而不必事先聲明或包含。
感謝您的幫助!
它是'rand'不是'rnd'。 – 2009-11-06 01:30:12
烏,錯別字將是我的死亡。謝謝肯。 – 2009-11-06 01:31:04
嗯不能決定你的或肯的答案是更好的,但組合正是我所需要的。謝謝! – 2009-11-06 01:37:01