我是新手,并试图编写一些简单的程序来理解它。在下面的代码中,我试图用随机数填充一个数组。这是我的代码:
using namespace boost::lambda;
srand(time(NULL));
boost::array<int,100> a;
std::for_each(a.begin(), a.end(), _1=rand());
但它看起来rand()
只被评估一次,我的数组包含每个元素的相同值。有人能指出这段代码有什么问题吗?
我是新手,并试图编写一些简单的程序来理解它。在下面的代码中,我试图用随机数填充一个数组。这是我的代码:
using namespace boost::lambda;
srand(time(NULL));
boost::array<int,100> a;
std::for_each(a.begin(), a.end(), _1=rand());
但它看起来rand()
只被评估一次,我的数组包含每个元素的相同值。有人能指出这段代码有什么问题吗?