Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/138.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何将此变量更改为数组c++; 我正在编写C++游戏中的代码,在这个游戏中,用户控制的桶收集半径相同的雨滴。我想用一个数组使16个雨滴中的每一个具有不同的大小(半径)。我不知道如何将变量更改为数组_C++_Arrays_Variables - Fatal编程技术网

如何将此变量更改为数组c++; 我正在编写C++游戏中的代码,在这个游戏中,用户控制的桶收集半径相同的雨滴。我想用一个数组使16个雨滴中的每一个具有不同的大小(半径)。我不知道如何将变量更改为数组

如何将此变量更改为数组c++; 我正在编写C++游戏中的代码,在这个游戏中,用户控制的桶收集半径相同的雨滴。我想用一个数组使16个雨滴中的每一个具有不同的大小(半径)。我不知道如何将变量更改为数组,c++,arrays,variables,C++,Arrays,Variables,我得到一个变量: int radius = randomBetween( MARGIN / 4, MARGIN / 2 ); 你可能会想使用浮动,但基本上如果我理解正确的话 int size_in_elements = 16; float *a= new float[size_in_elements]; float maxvalue = 100.0f; // this will be the maximum value to assign to each element for(int i =

我得到一个变量:

int radius = randomBetween( MARGIN / 4, MARGIN / 2 );

你可能会想使用浮动,但基本上如果我理解正确的话

int size_in_elements = 16;
float *a= new float[size_in_elements];
float maxvalue = 100.0f; // this will be the maximum value to assign to each element
for(int i = 0; i < size_in_elements; i++)
{
    a[i] = fmodf((float)rand(), maxvalue);
}
delete[] a; // Don't forget the brackets here... delete[] is used for deleting arrays.
int size\u in\u元素=16;
float*a=新的float[大小单位为单位];
浮点最大值=100.0f;//这将是分配给每个元素的最大值
for(int i=0;i

希望我帮助了一些

这是一个使用实际C++ +/p>的例子。
#include <algorithm>
#include <functional>
#include <random>
#include <vector>

std::mt19937 prng(seed);
std::uniform_int_distribution<> dist(MARGIN / 4, MARGIN / 2);
std::vector<int> radii(16);
std::generate(radii.begin(), radii.end(), std::bind(dist, std::ref(prng)));
#包括
#包括
#包括
#包括
标准:mt19937 prng(种子);
标准:统一分布区(边距/4,边距/2);
标准:向量半径(16);
std::generate(radii.begin()、radii.end()、std::bind(dist、std::ref(prng));

std::vector
将是比自己管理数组内存更好的选择。我认为他仍在学习基础语言的诀窍。。。不要过早地参与STD命名空间,初学者在使用<代码>新[] ]/COD>和 Dele[]/Cord>,而不是使用标准库时,没有什么意义。有些人需要(ED)来重载新的和删除,所以初学者在不知道C++的情况下应该被扔进深渊。更多的人需要从编写正确的程序开始。从手动内存管理开始只是在问问题。这种方法是其中有这么多坏的C++代码的原因之一。@ KeBoodHigPIM:当你的Stman的论点很有趣时,没有人建议他转换语言。我们所说的是,你的答案应该是C++答案,而不是由低级嵌入的C.JuangPopaZa启发的答案,而在实际程序中,至少需要把最后一个语句放在函数、构造函数或析构函数中,我认为在这样一个简单的例子中不必这样做。因为重点是演示
std::generate
,而不是函数定义。