我正在尝试制作一系列颜色,但不幸的是Tinker库似乎不支持Arrays:
Tinker::Vect3d<float> rndCol[5];
rndCol[0] = {255,0,0};
rndCol[1] = {0,255,0};
rndCol[2] = {0,0,255};
rndCol[3] = {255,165,0};
rndCol[4] = {5,125,200};
soundLvel:47: error: expected constructor, destructor, or type conversion before '=' token
soundLvel:48: error: expected constructor, destructor, or type conversion before '=' token
soundLvel:49: error: expected constructor, destructor, or type conversion before '=' token
soundLvel:50: error: expected constructor, destructor, or type conversion before '=' token
soundLvel:51: error: expected constructor, destructor, or type conversion before '=' token
Arduino支持列表或等价物我也可以存储。我无法在参考文献中找到任何内容。
答案 0 :(得分:2)
您可以创建一个2D数组来存储RGB颜色值:
int colourArray[5][3] =
{
{255,0,0},
{0,255,0},
{0,0,255},
{255,165,0},
{5,125,200}
};
请注意[5][3]
中的5是可选的,如果省略([][3]
),它将自动分配给您初始化的元素数。
您一次只能访问一个元素,因此如果要将它们分配给其他数组,则需要遍历3个RGB子元素。例如:
int some_colour[3];
for(int i=0; i<3; i++)
{
some_colour[i] = colourArray[2][i];
}