отсутствует индекс C ++ - PullRequest
2 голосов
/ 01 июня 2010

сейчас c ++ выдаёт мне эту ошибку: ошибка C2087 'color' отсутствует подстрочный индекс при первом получении, и я не знаю, что делать>. <Надеюсь, что any1 может помочь мне </p>

struct Color{
    float r;
    float g;
    float b;
};
Color color[][];

и я использую его здесь

for(int i=0;i<cubes;i++)
{
    color[i][0].r = fRand();color[i][0].g=fRand(.5);color[i][0].b=fRand();

... и т.д.

Ответы [ 4 ]

4 голосов
/ 01 июня 2010

Вы должны указать размер вашего массива:

Color color[HEIGHT][WIDTH];
3 голосов
/ 01 июня 2010

Вы пытаетесь создать массив без указания его размера. Если размер динамический, вы должны использовать указатели. type x[][]; всегда ошибка, независимо от типа. Вы можете инициализировать свой массив, хотя, int x[] = {10,11}; // ok или int[][2]={{1,2},{1,2},{1,3}}; // also works

2 голосов
/ 01 июня 2010

вы не указываете размер для двумерного массива, как кажется. может быть, это вызывает проблему?

2 голосов
/ 01 июня 2010

В вашем определении цвета отсутствуют размеры для подписчиков. Поэтому компилятор не может определить, сколько места выделено для цвета.

...