这是一些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