我之前看到了这个,对我来说没有任何意义:
void generate(std::vector<float> v)
{
float f = generate_next_float();
v.push_back(f);
}
如果v
作为引用或指针发送,那将是有意义的。但它是按值发送的,因此被复制到函数中,对吗?因此,一旦函数终止,所做的任何事情都将v
立即无用,这v
超出了范围,被删除了。
我对吗?
也就是说,函数generate_next_float()
可能会做一些事情,所以不是没用,但是vector
这里的使用似乎毫无意义。f
不依赖它,什么也不返回。