У меня есть-структуру, вектор и приватную переменную, как показано ниже:Как получить доступ к значению в моей структуре?
typedef struct _ItemData
{
col colour;
int xposition;
} ItemData;
typedef std::vector<ItemData> Data;
Data *lookupTable;
Я инициализировать таблицу, используя:
lookupTable = NULL;
Когда я добавляю к Itemdata, я так с помощью:
ItemData newData = { colour, x };
lookupTable[y].push_back(newData);
Это добавляет цвет и координату x к линии Y.
Я пытаюсь получить доступ к переменной цвета и х позже с помощью:
lookupTable[yCounter][xCounter].colour
lookupTable[yCounter][xCounter].xposition
, но, кажется, не быть имея никакого хорошего результата, может кто-нибудь сказать мне, что я делаю неправильно, пожалуйста?
Что такое 'lookupTable' указатель? Также typedef для 'struct' является C-ism и не требуется в C++. Вы можете использовать имя структуры вместо 'struct struct_name' в C++. – NathanOliver
Мне дали код и дали указание не менять его, кроме как захватить x и цвет, я не уверен, что это указатель, но если да, то как бы я захватил их с помощью указателей? – GilfoyMayhew
Вы используете указатель lookupTable как массив, не выделяя для него никакой памяти. Вместо этого используйте другой 'std :: vector'. – Peter