Вы создаете массив указателей с:
moves* possibleMoves[100];
, когда вы хотите получить массив moves
.
Затем вы пытаетесь присвоить piece
in possibleMoves[0]
значение 100
с:
&(possibleMoves[0]->piece) = 100;
но вы на самом деле делаете что-то совсем другое.Как сказал @Henri Menke, лучше прочесть о &
, *
, .
и ->
.
Чтобы заставить задуманный код работать, попробуйте:
int main()
{
moves possibleMoves[100];
possibleMoves[0].piece = 100;
cout << possibleMoves[0].piece << endl;
return 0;
}
Здесьвы создаете массив из moves
объектов, затем присваиваете значение piece
в объекте 0 значение 100. Вы извлекаете это значение и печатаете его как cout
.