Как инициализировать массив из класса и установить значение для первого элемента? - PullRequest
1 голос
/ 31 мая 2019

Использовать в Arduino.Проблема есть: Player ::ordins [0] = {0, 0};

Файл заголовка:

#ifndef game_h
#define game_h
#include <Arduino.h>

class Player {
  public:
    int getScore();
    static int coords[3250][2];
    coordinates: x, y

  private:
    static int score;
};

#endif

Файл Cpp:

#include "game.h"

int Player::score = 1;

int Player::getScore() {
  return this->score;
}

int Player::coords[3250][2];
Player::coords[0] = {0, 0};

Компиляторпишет: 'координаты' в "классе Player" не называет тип

1 Ответ

0 голосов
/ 31 мая 2019

Вы не можете делать это в области имен

int Player::coords[3250][2];
Player::coords[0] = {0, 0};

На самом деле эти утверждения эквивалентны этому

int Player::coords[3250][2] = { { 0, 0 } };

или

int Player::coords[3250][2] = {};

или даже просто

int Player::coords[3250][2];

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

...